W3C home > Mailing lists > Public > public-css-testsuite@w3.org > January 2011

RE: [RC4] numbers-units-018

From: Arron Eicholz <Arron.Eicholz@microsoft.com>
Date: Tue, 11 Jan 2011 04:51:28 +0000
To: "css21testsuite@gtalbot.org" <css21testsuite@gtalbot.org>, Alan Gresley <alan@css-class.com>
CC: Public CSS test suite mailing list <public-css-testsuite@w3.org>
Message-ID: <07349ECFC3608F48BC3B10459913E70B12B186FE@TK5EX14MBXC140.redmond.corp.microsoft.com>
On Monday, January 10, 2011 11:00 AM Gérard Talbot wrote:
> Le Lun 10 janvier 2011 2:28, Alan Gresley a écrit :
> > On 10/01/2011 5:05 PM, "Gérard Talbot" wrote:
> >> Hello,
> >>
> >> http://test.csswg.org/suites/css2.1/20101210/html4/numbers-units-018.
> >> htm
> >>
> >> 1-
> >> <title>CSS Test: Specifying em/ex on the root element</title>
> >> (...)
> >>          <meta name="assert" content="Units 'em' and 'ex' refer to
> >> the initial value of the property when specified on the root element
> >> of a document.">
> >>
> >> There is no property with em or ex specified on the root element in
> >> the testcase. So, the testcase is not testing what it is declaring to
> >> test.
> >
> >
> > The assert should possibly say,
> >
> >      "Units 'em' and 'ex' used with offset and margins should allow
> >       the correct positioning due to the font size of an ancestor
> >       and/or font size settings of a UA."
> >
> >
> >> 2-
> >> The testcase can never fail, regardless of font used. And the font
> >> family in use is never controlled, so we never can predict the value
> >> of 30ex as "ex" varies from 1 font family to another.
> >> This testcase would require Ahem font and to set it on the root
> >> element.
> >
> >
> > The testcase can fail if UAs do not position the black bordered box
> > correctly regardless of whatever font is used,
> 
> I use different fonts with different browsers and the testcase passes in all
> browsers. When using webpage debuggers (Opera DragonFly, Firefox DOM
> inspector, Chrome Web Inspector, Konqueror DOMtreeviewer), the actual
> value for 30ex varies because of different font used.
> 
> > regardless of the font
> > size settings in a UA and regardless of an OS screen resolution.
> 
> The assumptions for the test suite is that we're all using # The resolution of
> the device is 96 CSS pixels per inch.
> # The 'medium' font-size computes to 16px.
> http://test.csswg.org/suites/css2.1/20101210/#uncommon
> 
> But, even here, you could change font size setting for that testcase and it
> would still pass.
> 
> 
> > With the "em" the left offset and margin-left values (testcase has
> > 30em) should correctly position the black bordered box on the right
> > edge of the orange box.
> >
> > With the "ex" the top offset and margin-top values (testcase has 30ex)
> > should correctly position the black bordered box on the bottom edge of
> > the blue box.
> 
> 
> The testcase has a circular logic and is not predictable. It ends up in a situation
> where 2 objects must be positioned at 30ex, regardless of what 1ex is or
> represents exactly in terms of pixels. 30ex as a length is compared to 30ex as
> a length via different properties (margin-top, height, top): this is not a real
> test.
> 
> The height of the blue stripe varies from using one font to another but its
> actual height is not predicted by the testcase. And it never overlaps the black
> bordered parg; I say the testcase makes it impossible too.
> 
> 
> > The unit "em" and "ex" are based on the font-size value of it ancestors.
> 
> The unit "em" and "ex" (for all properties except font-size) are based on the
> font-size value of the current element ... and font properties (including font-
> size) are inherited ... so that's possible.
> 
> > If no such ancestors exist, then the used size of the "em" and "ex"
> > values are base on the default font size of the UA.
> >
> > <http://www.w3.org/TR/CSS21/syndata.html#length-units>
> 
> I can not find the quote you are referring to.
> 
> Eventually, what you say about ancestors happens in the testcase.
> 
> The testcase was most likely trying to verify, test this statement from the
> spec:
> 
> "
> When specified for the root of the document tree (e.g., "HTML" in HTML),
> 'em' and 'ex' refer to the property's initial value.
> "
> <http://www.w3.org/TR/CSS21/syndata.html#length-units>
> 
> 
> > This case doesn't need Ahem font.
> 
> Alan, the x-height (1ex) of the Ahem font is 0.8em. So
> - it makes it easy/easier to create non-fractional pixel situation
> - it avoids situation of where testers may be using various different fonts,
> each having a different ex value:
> http://www.cs.tut.fi/~jkorpela/x-height.html
> http://www.barrypearson.co.uk/articles/text/aspect_values.htm
> In those references, the 1ex value varies greatly.
> - it makes a testcase predictable, reliable, easy to measure/figure out from a
> testcase perspective
> 
> 30ex is always equal to 30ex regardless of the font used and regardless of
> font-size used.
> 

Updated number-units-018 for RC5.

--
Thanks,
Arron Eicholz
Received on Tuesday, 11 January 2011 04:52:02 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 11 January 2011 04:52:08 GMT