[css-position] Vertical writing mode should be taken into account for over-constrained position relative and sticky elements.

Hi,

   Current specification for position relative takes into account text 
direction for horizontally over-constrained elements:

"If neither '|left| <http://dev.w3.org/csswg/css-position/#left>' nor 
'|right| <http://dev.w3.org/csswg/css-position/#right>' is '|auto|', the 
position is over-constrained, and one of them has to be ignored. If the 
'|direction|' property of the containing block 
<http://dev.w3.org/csswg/css-position/#containing-block0> is '|ltr|', 
the value of '|left| <http://dev.w3.org/csswg/css-position/#left>' wins 
and '|right| <http://dev.w3.org/csswg/css-position/#right>' becomes 
-'|left| <http://dev.w3.org/csswg/css-position/#left>'. If '|direction|' 
of the containing block is '|rtl|', '|right| 
<http://dev.w3.org/csswg/css-position/#right>' wins and '|left| 
<http://dev.w3.org/csswg/css-position/#left>' is ignored."

   Sticky positioning behavior is implemented similar to relative 
positioning and also ignores right or left edge offset on base of text 
direction for horizontally over-constrained elements.

   But if element is vertically over-constrained then only bottom edge 
is always ignored:

"If neither '|top| <http://dev.w3.org/csswg/css-position/#top>' and 
'|bottom| <http://dev.w3.org/csswg/css-position/#bottom>' is '|auto|', 
'|bottom| <http://dev.w3.org/csswg/css-position/#bottom>' is ignored 
(i.e., the used value of '|bottom| 
<http://dev.w3.org/csswg/css-position/#bottom>' will be minus the value 
of '|top| <http://dev.w3.org/csswg/css-position/#top>')."

   It seems would be logical to take writing mode into account and 
ignore top edge if writing mode is " bottom-to-top" .

https://codereview.chromium.org/267063007/#msg2
https://bugzilla.mozilla.org/show_bug.cgi?id=979602#c17


   Slava

Received on Thursday, 22 May 2014 20:53:14 UTC