Re: [css-text-decor-3] Processing model for text-underline-position: under | left | right

On Sunday 2013-03-24 21:09 -0700, L. David Baron wrote:
> http://dev.w3.org/csswg/css-text-decor-3/#text-underline-position-property
> says:
> 
>   # ‘under’
>   #   In horizontal writing modes, the underline is positioned
>   #   relative to the under edge of the element's content box. In
>   #   this case the underline usually does not cross the descenders.
>   #   (This is sometimes called "accounting" underline.) If the
>   #   underline affects descendants with a lower content edge, the
>   #   user agent should shift the underline down further to the
>   #   lowest underlined content box edge. The user agent may ignore
>   #   elements with ‘vertical-align’ values given as lengths,
>   #   percentages, ‘top’, or ‘bottom’ when making this adjustment.
>   #   (Note that images that are not affected by the underline per
>   #   ‘text-decoration-skip’ will not affect the position of the
>   #   underline.) 
> 
> and similar for 'left' and 'right'.
> 
> 
> It's not clear to me how these rules integrate with the processing
> model for text decorations defined in
> http://dev.w3.org/csswg/css-text-decor-3/#line-decoration
> 
> I expect the specification to define a processing model that clearly
> answers questions such as:

I now realize some of these questions I had regarding this section
(2.6. Text Underline Position: the ‘text-underline-position’
property) may be answered by the following section (2.7. Determining
the Position and Thickness of Line Decorations)
http://dev.w3.org/csswg/css-text-decor-3/#line-position (though I
disagree with the rules in that section; see [1]).

However, there are some annoying inconsistencies between sections
2.6 and 2.7, such as:

 * whether atomic inlines in the line are considered (2.6 says yes
   and refers to the content box, 2.7 implies no and refers to the
   EM box).

 * whether text-decoration-skip is mentioned (it is in 2.6, but not
   in 2.7)

It's also not clear which section overrides the other.  It seems
like 2.7 tries to be the authoritative definition that overrides the
vaguer prose in 2.6, but it has the above inconsistencies.


And also, this question, which was a bit different in subject from
the rest:
>  * Are descendants within the entire element considered, or is the
>    rule applied line-by-line?  (If the latter, are descendant blocks
>    to which the underline is propagated considered?)
is mentioned in a later section; but I also disagree with that [2].

-David

[1] http://lists.w3.org/Archives/Public/www-style/2013Mar/0533.html
[2] http://lists.w3.org/Archives/Public/www-style/2013Mar/0532.html

-- 
𝄞   L. David Baron                         http://dbaron.org/   𝄂
𝄢   Mozilla                           http://www.mozilla.org/   𝄂

Received on Monday, 25 March 2013 04:53:21 UTC