Created attachment 585204 [details]
This is simplified from a report on css-d on December 23; original was http://dev.l-c-n.com/_temp/ck-20111223.html
In quirks mode or almost-standards mode, the list bullet or number disappears when:
(a) a list item wraps to two lines, and
(b) the entire contents of the list item are nested within two (or more) inlines, and an inline other than the outer one has vertical-align: top or bottom
The underlying reason for this is a bug in nsLineLayout::IsZeroHeight() (in layout/generic/nsLineLayout.cpp). What it does to check for the line being zero height is not sufficient in quirks mode; it needs to look inside the children of the line since there might be top/bottom aligned frames that don't influence the height of their parent.
This breaks nsBlockFrame::PlaceLine (which uses two different tests for emptiness).
Then again, maybe we should fix this by limiting the inline layout quirks when there are top/bottom children, since that would also fix the text-decoration issue with the original testcase.
Created attachment 585205 [details]
original (less simplified) testcase
... saved from url in comment 0.
Created attachment 585219 [details] [diff] [review]