W3C home > Mailing lists > Public > www-style@w3.org > December 2011

Re: [css3-text] Splitting CSS Text into Level 3 and Level 4

From: Christoph Päper <christoph.paeper@crissov.de>
Date: Thu, 15 Dec 2011 17:15:12 +0100
Message-Id: <7E1773E3-A4D1-4968-A568-644BEDBB6D8F@crissov.de>
To: www-style list <www-style@w3.org>
Håkon Wium Lie:
> 
> Yes, I think we can find a simple generic solution that can handle the
> documented use cases [1].

Some of them require digraph support, e.g. romanized Greek: ‘θ’ → ‘th’. You cannot do that (in any sane way) without a separator, whether it’s a space or something else. It might be possible to introduce one later, however, because in

  @text-transform foo { convert: "a b c" to "d e f"}

you would have specified a mapping from ‘ ’ to ‘ ’ in the basic level, twice though. Dupicate conversions are not covered yet, but I assume the last would win, i.e. ‘f’ in the following example

  @text-transform foo { convert: "aaa" to "def"}

>  @text-transform german-lowercase { convert: "ẞ" to "ß" }

I’m still a fan of extensible keywords, i.e.

  @text-transform lowercase { convert: "ẞ" to "ß" }

By the way, does any CSS module have a normative note to the effect that UAs should copy and paste its styles only into rich-text environments, not into plain-text ones? That means

  <foo style="text-transform: lowercase">
    B<baz style="display: none"> </baz>A/R
  </foo>

should be pasted as “B A/R”, not “ba/r” into form fields and the like. I think most browsers are broken in this regard, especially concerning the two properties I used in the example.

>  @text-transform foo { convert: "abc" to "def", "ghi" to "jkl" }

I’ve suggested, for a later level, to optionally specify the scope, like so:

  @text-transform foo {
    convert: all "abc" to "def", initial "abc" to "DEF";
  }

That could of course be done with ‘convert’ becoming a “shorthand descriptor” in a later level:

  @text-transform foo {
    convert: "abc" to "def"; /* CSS3 only handles ‘all’ */
    convert-initial: "abc" to "DEF"; /* CSS4, specific override */
  }

>  @text-transform foo { convert: "a-c" to "d-f" } /* ranges, … */

I agree that this, like <urange>, is better than ‘convert-range’. Nevertheless, ranges won’t be all that helpful in many scenarios, because they’re mostly arbitrary after all.
Received on Thursday, 15 December 2011 16:17:44 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 17:20:47 GMT