Seems to boil down to us creating line + text frame with an empty string:
```
Inline(span)(0)@7fc188df9b38 parent=7fc188df9a20 next=7fc188df9ff0 (x=0, y=2010, w=5290, h=900) ink-overflow=(x=0, y=-1950, w=5290, h=2850) scr-overflow=(x=0, y=-1950, w=5290, h=2850) [content=7fc184904dc0] [cs=7fc184834608] <
Block(_moz_generated_content_before)(-1)@7fc188df9be0 parent=7fc188df9b38 next=7fc188df9d98 (x=0, y=-1950, w=480, h=480) [content=7fc184909160] [cs=7fc184834708:before] <
line@7fc188df9d48 count=1 state=inline,clean,prevmarginclean,not-impacted,not-wrapped,no-break,clear-before:none,clear-after:none(x=120, y=120, w=0, h=4500) ink-overflow=(x=120, y=2670, w=0, h=0) scr-overflow=(x=120, y=2670, w=0, h=0) <
Text(0)""@7fc188df9ca8 parent=7fc188df9be0 (x=120, y=2670, w=0, h=0) [content=7fc184905780] [cs=7fc184834c08:-moz-text] [run=7fc188d59b00][0,0,T]
>
>
Text(0)"pseudo pre"@7fc188df9d98 parent=7fc188df9b38 next=7fc188df9e38 (x=480, y=0, w=4330, h=900) [content=7fc184905580] [cs=7fc184834508:-moz-text] [run=7fc1accfe2f0][0,10,T]
Block(_moz_generated_content_after)(-1)@7fc188df9e38 parent=7fc188df9b38 (x=4810, y=-1950, w=480, h=480) [content=7fc1849091f0] [cs=7fc184834808:after] <
line@7fc188df9fa0 count=1 state=inline,clean,prevmarginclean,not-impacted,not-wrapped,no-break,clear-before:none,clear-after:none(x=120, y=120, w=0, h=4500) ink-overflow=(x=120, y=2670, w=0, h=0) scr-overflow=(x=120, y=2670, w=0, h=0) <
Text(0)""@7fc188df9f00 parent=7fc188df9e38 (x=120, y=2670, w=0, h=0) [content=7fc184905800] [cs=7fc184834d08:-moz-text] [run=7fc188d59c00][0,0,T]
>
>
>
```
... which then forces the line height to be [set](https://searchfox.org/mozilla-central/rev/21001eee69767de5db95952154d49f01b72318ba/layout/generic/nsLineLayout.cpp#2297).
Comparatively, empty inline-block div would have zero line:
```
Inline(span)(3)@7fc188dfa068 parent=7fc188df9a20 next=7fc188dfa340 (x=0, y=6810, w=3558, h=900) [content=7fc184904ee0] [cs=7fc184834608] <
Block(div)(0)@7fc188dfa110 parent=7fc188dfa068 next=7fc188dfa1d8 (x=0, y=240, w=480, h=480) [content=7fc184904f70] [cs=7fc184834a08] <
>
Text(1)"ib pre"@7fc188dfa1d8 parent=7fc188dfa068 next=7fc188dfa278 (x=480, y=0, w=2598, h=900) [content=7fc184905680] [cs=7fc184834508:-moz-text] [run=7fc188d1db60][0,6,T]
Block(div)(2)@7fc188dfa278 parent=7fc188dfa068 (x=3078, y=240, w=480, h=480) [content=7fc184909040] [cs=7fc184834a08] <
>
>
```
We shouldn't generate frames for pseudo-elements with empty `content`.
Bug 1855583 Comment 7 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
Seems to boil down to us creating line + text frame with an empty string:
```
Inline(span)(0)@7fc188df9b38 parent=7fc188df9a20 next=7fc188df9ff0 (x=0, y=2010, w=5290, h=900) ink-overflow=(x=0, y=-1950, w=5290, h=2850) scr-overflow=(x=0, y=-1950, w=5290, h=2850) [content=7fc184904dc0] [cs=7fc184834608] <
Block(_moz_generated_content_before)(-1)@7fc188df9be0 parent=7fc188df9b38 next=7fc188df9d98 (x=0, y=-1950, w=480, h=480) [content=7fc184909160] [cs=7fc184834708:before] <
line@7fc188df9d48 count=1 state=inline,clean,prevmarginclean,not-impacted,not-wrapped,no-break,clear-before:none,clear-after:none(x=120, y=120, w=0, h=4500) ink-overflow=(x=120, y=2670, w=0, h=0) scr-overflow=(x=120, y=2670, w=0, h=0) <
Text(0)""@7fc188df9ca8 parent=7fc188df9be0 (x=120, y=2670, w=0, h=0) [content=7fc184905780] [cs=7fc184834c08:-moz-text] [run=7fc188d59b00][0,0,T]
>
>
Text(0)"pseudo pre"@7fc188df9d98 parent=7fc188df9b38 next=7fc188df9e38 (x=480, y=0, w=4330, h=900) [content=7fc184905580] [cs=7fc184834508:-moz-text] [run=7fc1accfe2f0][0,10,T]
Block(_moz_generated_content_after)(-1)@7fc188df9e38 parent=7fc188df9b38 (x=4810, y=-1950, w=480, h=480) [content=7fc1849091f0] [cs=7fc184834808:after] <
line@7fc188df9fa0 count=1 state=inline,clean,prevmarginclean,not-impacted,not-wrapped,no-break,clear-before:none,clear-after:none(x=120, y=120, w=0, h=4500) ink-overflow=(x=120, y=2670, w=0, h=0) scr-overflow=(x=120, y=2670, w=0, h=0) <
Text(0)""@7fc188df9f00 parent=7fc188df9e38 (x=120, y=2670, w=0, h=0) [content=7fc184905800] [cs=7fc184834d08:-moz-text] [run=7fc188d59c00][0,0,T]
>
>
>
```
... which then forces the line height to be [set](https://searchfox.org/mozilla-central/rev/21001eee69767de5db95952154d49f01b72318ba/layout/generic/nsLineLayout.cpp#2297), since `preMode` is [true](https://searchfox.org/mozilla-central/rev/21001eee69767de5db95952154d49f01b72318ba/layout/style/nsStyleStruct.h#924).
Comparatively, empty inline-block div would have zero line:
```
Inline(span)(3)@7fc188dfa068 parent=7fc188df9a20 next=7fc188dfa340 (x=0, y=6810, w=3558, h=900) [content=7fc184904ee0] [cs=7fc184834608] <
Block(div)(0)@7fc188dfa110 parent=7fc188dfa068 next=7fc188dfa1d8 (x=0, y=240, w=480, h=480) [content=7fc184904f70] [cs=7fc184834a08] <
>
Text(1)"ib pre"@7fc188dfa1d8 parent=7fc188dfa068 next=7fc188dfa278 (x=480, y=0, w=2598, h=900) [content=7fc184905680] [cs=7fc184834508:-moz-text] [run=7fc188d1db60][0,6,T]
Block(div)(2)@7fc188dfa278 parent=7fc188dfa068 (x=3078, y=240, w=480, h=480) [content=7fc184909040] [cs=7fc184834a08] <
>
>
```
We shouldn't generate frames for pseudo-elements with empty `content`.