[css-text] Arabic letters connecting between elements with display: inline

So, probably this thread should be copied over to the bidi and ww-style lists. :)
Adding them and topping off with a summary... and presuming that smontagu doesn't
mind being quoted. ;) Reply here!

The issue is (as the title says) whether Arabic letters connect between
elements with 'display: inline', for example in this case:
   <p>foo<span color="blue">bar</span>baz</p>

Browsers differ in their behavior. Simon Montagu suspects FF only connects if
they are using the same font (face, style, and weight).

Existing tests/discussion -
Simple testcase: http://www.unics.uni-hannover.de/nhtcapri/temp/nastaliq.html
Mediawiki bug: https://bugzilla.wikimedia.org/show_bug.cgi?id=60916
Mozilla bug (resolved WORKSFORME): https://bugzilla.mozilla.org/show_bug.cgi?id=236135
Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=6148
Chromium bug: https://code.google.com/p/chromium/issues/detail?id=6122

Smontagu notes:
>  I think it would be very reasonable to expect cursive scripts not to connect
> and shape across boundaries of "block" elements with display: inline, just
> as we make such elements do bidi reordering in isolation from one another
> (https://www.w3.org/Bugs/Public/show_bug.cgi?id=10815).

Aharon suggested that we overload 'unicode-bidi: isolate' for this.
Smontagu pointed out it's not a bidi issue and also affects non-RTL scripts.

My take:
Affecting non-RTL scripts isn't an issue; you can use bidi isolation on any
element even if you are not changing its direction. And while it makes sense,
it is overloading a bidi property for non-bidi reasons. I wouldn't object to
it, given the correspondance of desired behavior is probably 1:1, but I see
the point about joining behavior being "off-topic" for bidi.

A reasonable switch might be whether there is positive padding/border/margin
between inlines. It seems unlikely that joining behavior is desired across
a non-zero margin, or that block elements would be inlined together without
either whitespace or margin/border/padding as a separator.

I don't think change of font or color should cause a joining break, however.

~fantasai

Received on Friday, 7 February 2014 20:44:46 UTC