[RC6] line-height-002 to line-height-104 have various issues

Hello,

I see several issues with the following tests:

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-002.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-003.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-004.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-005.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-013.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-014.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-015.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-016.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-024.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-025.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-026.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-027.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-035.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-036.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-037.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-038.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-046.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-047.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-048.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-049.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-057.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-059.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-060.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-068.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-070.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-071.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-079.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-080.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-081.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-082.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-090.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-091.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-092.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-093.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-101.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-103.htm

http://test.csswg.org/suites/css2.1/20110323/html4/line-height-104.htm




If a set line-height is smaller than font-size, then glyphs bleed out of
the line box and then content of contiguous line boxes overlap.

Eg.
http://www.gtalbot.org/BrowserBugsSection/css21testsuite/font-size-vs-smaller-line-height.html

Section 10.8 is not clear on this, definitely not sufficiently clear on
this.

The issues I see with the listed tests are

1-
The overlapping box (abs. pos. #div3) increases line box; eg.
http://test.csswg.org/suites/css2.1/20110323/html4/line-height-080.htm
http://test.csswg.org/suites/css2.1/20110323/html4/line-height-102.htm

The added black area we can see around the first "X" of #div2 is given
by #div2, #div3
            {
                background: black;
            }

which will affect content area.

When line-height is taller than font-size, then background set to black
on #div2 makes sense as this will paint content area. eg
http://test.csswg.org/suites/css2.1/20110323/html4/line-height-006.htm

2-
The 2nd "X" in #div2 is always useless, irrelevant in all listed tests
and can be safely removed. It also has been removed too in a few tests.

At least one test has 4 boxes: eg.
http://test.csswg.org/suites/css2.1/20110323/html4/line-height-025.htm

3-
In the listed tests, the set line box is smaller than the used
font-size: so, glyphs bleed out (they have to bleed out, they must bleed
out) of line box. In such cases, the height of 2 boxes which are being
compared are entirely due to font-size (and not line box) and due to the
#div3 box; in final analysis, the height of those 2 boxes have nothing
to do with the set line-height.


What the tests would originally want to do is to paint line box and then
compare it with some reference object or reference image.

For line-height: 0 (with various units) tests, I would suggest to just
set background to red and display characters: no rel. pos. needed, no
abs. pos. needed: eg

http://www.gtalbot.org/BrowserBugsSection/css21testsuite/line-height-0.html


For other tests, right now, I do not have a substitution or alternative
ready but I have a precise idea or 2.

The tests are setting the line-height but they are comparing the first
"X" with #div3 (with #div3 resetting line height in a number of tests).

I really think the spec should explicitly clarify this issue, ideally
with a diagram, schema showing, displaying the interaction between
font-size and line box.

As coded, the listed tests are not testing the line-height property.

regards, Gérard
-- 
Contributions to the CSS 2.1 test suite:
http://www.gtalbot.org/BrowserBugsSection/css21testsuite/

CSS 2.1 Test suite RC6, March 23rd 2011:
http://test.csswg.org/suites/css2.1/20110323/html4/toc.html

CSS 2.1 test suite harness:
http://test.csswg.org/harness/

Contributing to to CSS 2.1 test suite:
http://www.gtalbot.org/BrowserBugsSection/css21testsuite/web-authors-contributions-css21-testsuite.html

Received on Wednesday, 22 February 2012 22:23:57 UTC