Re: bdi definition (Additional requirements for Bidi in HTML, sections 2.1, 3.1, 3.3)

Simon Montagu wrote:
> On 06/06/2010 06:50 PM, Aharon (Vladimir) Lanin wrote:
>> Separation, on the other hand, has almost no precedent in today's 
>> browsers.
>> The only exception is an embedded block element with display:inline, 
>> which
>> until recently all browsers treated as a normal inline element, with no
>> separation or isolation. Firefox recently discovered that this is not
>> according to spec, and changed it to use separation. I am not sure if 
>> using
>> separation vs isolation was a conscious choice or what considerations 
>> went
>> into it.
>>
>>
>> *** Mozilla engineers: could you shed some light? ***
>>
>
> The distinction between separation and isolation was certainly nowhere 
> in my mind when I implemented the current bidi behaviour of embedded 
> block elements with display:inline in Firefox. All that I actually did 
> was to give all HTML block elements "unicode-bidi: embed" in the User 
> Agent Stylesheet, which when the element is transformed to 
> "display:inline" has the same effect as "explicitly adding a dir 
> attribute (assigned the inherited value) to the transformed element", 
> as called for in the spec.
>
> (An edge case that I have only now considered is when the block 
> element already has an explicit dir attribute of its own. Should the 
> inherited value override this or not? This is probably a moot point, 
> since I agree with you that this part of the spec should be 
> reformulated in terms of bdi anyway).
>

May be you are right.
Firefox is the only browser (I don't test IE) that render  the following 
example correctly (i.e. CSS unicode-bidi** is equivalent to HTML dir 
markup):

with the style
<style type="text/css">
.a p {display:inline; direction: rtl; unicode-bidi: embed}
.b p {display:inline;}
</style>

the HTML code (case-1):

<div class="a">
<p>display</p>
<p>in</p>
<p>line</p>
</div>

gives (correct)
    "line in display"


while (case-2):

<div class="b" dir="rtl">
<p>display</p>
<p>in</p>
<p>line</p>
</div>

gives (right justified) for other browsers
    "display in line"


Especially, when <p>display</p> is replaced by <p>dis ARABIC play</p>
The content inherits of the rtl directionality.

We already talked about this. See 
(http://lists.w3.org/Archives/Public/public-i18n-core/2009OctDec/0107.html)
Please try it here: http://www.w3c.org.ma/Tests/displayInline.html

Najib

Received on Tuesday, 8 June 2010 12:27:15 UTC