Re: [css3-text-layout] New editor's draft - margin-before/after/start/end etc.

Boris Zbarsky <bzbarsky@MIT.EDU> wrote on 2010/05/27 4:32:35
> On 5/26/10 3:13 PM, David Hyatt wrote:
> >> Mozilla and WebKit already implemented *-start and *-end properties:
> >> http://help.dottoro.com/lcqbjiaw.php
> >> https://developer.mozilla.org/En/CSS:-moz-margin-start
> >> http://developer.apple.com/safari/library/documentation/AppleApplications/Reference/SafariCSSRef/Articles/StandardCSSProperties.html#//apple_ref/doc/uid/TP30001266--webkit-margin-start
> >
> > I can't speak for Mozilla, but in WebKit our *-start and *-end properties are faked.  When applied to an element they resolve immediately to left or right (depending on the direction).  We don't carry around a real notion (possibly inherited) that the start side should be used. In other words, if you have a RTL block inside a LTR block and the LTR block has margin-start:20px on it, and the RTL block has margin: inherit on it, you will get a left margin of 20px on the RTL block.
> 
> In mozilla's implementation, *-start and *-end are effectively converted 
> into *-left and *-right as needed when determining computed values. 
> There is no separate computed value for *-start and *-end.  A specified 
> value like "*-start: inherit" in treated as either "*-left: inherit" or 
> "*-right: inherit" depending on the directionality of the thing doing 
> the inheriting.  But the value inherited will obviously depend on the 
> directionality of the parent, if the parent itself had a "*-start" 
> specified.
> 
> All of which sounds similar to what you describe for webkit.

All of which sounds similar to what I want :-)

I don't want separate computed values for logical and physical
properties. See:

http://dev.w3.org/csswg/css3-text-layout/#logical-prop
| The computed value of a logical property affects the computed value 
| of the corresponding physical property, and vice versa.
| 
| For example, if the writing-mode of the element is lr-tb, the computed 
| value of the ‘margin-before’ overrides the ‘margin-top’.
| 
| If both logical and physical properties are specified on the same 
| element, these corresponding properties are treated as same property 
| and then normal cascading rules are applied.
| 
| The writing-mode value of the element is used for the mapping of 
| corresponding properties and therefore must be evaluated first. 

Best regards,

-- 
村上 真雄 (MURAKAMI Shinyu)
http://twitter.com/MurakamiShinyu
Antenna House Formatter:
http://www.antenna.co.jp/AHF/
http://www.antennahouse.com

Received on Thursday, 27 May 2010 00:30:42 UTC