Re: effect of CSS first-letter and text-transform on languages without letter case

Hello Amir,

On 2017/12/25 07:17, Amir E. Aharoni wrote:
> Hi,
> 
> (I don't write on these mailing lists often, so I apologize if it's not the
> best place for this.)

This should probably end up somewhere in github. css-text-3 points to 
https://github.com/w3c/csswg-drafts/issues.

> Consider this CSS:
> 
> .cap::first-letter {
>     text-transform: capitalize;
>   }
> 
> Is its behavior defined for languages that don't have letter case?
> 
> I don't really see a clear definition in
> https://www.w3.org/TR/css-text-3/#text-transform-property (is this is the
> most relevant CSS version to check? Sorry if I'm not looking at the most
> appropriate one).

Well, it says:

"'capitalize'
Puts the first typographic letter unit of each word, if lowercase, in 
titlecase; other characters are unaffected."

Given that Hebrew/Arabic doesn't have any lower case characters, these 
should be unaffected based on a straight reading of that text.

In terms of spec text, the following two values (uppercase/lowercase) 
are more problematic, as it e.g. says:

"'uppercase'
Puts all letters in uppercase."

which would be impossible for unicameral scripts because they don't have 
any case.

> Here's a simple example of how it works with Arabic text:
> https://jsfiddle.net/amire80/0uzq39ja/
> 
> To me this is broken in both Chrome (63.0.3239.84) and Firefox (Nightly
> 59.0a1 (2017-12-24)) on macOS. I guess that in both engines the
> first-letter property causes an unnecessary disconnection in the middle of
> the word. It would be better if in Arabic this wouldn't do anything.

Agreed. Even more, for a cursive Latin font, one would expect the 
connection to be kept even if the case of the first letter changes.

> I can report rendering bugs in the browsers, but I feel that it makes more
> sense to define it also in the standard.

Yes indeed.

Regards,   Martin.

> (A sensible question is "why apply this to Arabic text in the first place".
> The answer is that the same CSS can be used by a version of the same
> content in several languages, and separating the CSS per alphabet is not a
> trivial thing to scale. I came upon this when investigating this bug in
> Wikipedia: https://phabricator.wikimedia.org/T183388 )
> 
> --
> Amir Elisha Aharoni · אָמִיר אֱלִישָׁע אַהֲרוֹנִי
> http://aharoni.wordpress.com
> ‪“We're living in pieces,
> I want to live in peace.” – T. Moore‬
> 

Received on Monday, 25 December 2017 05:55:31 UTC