- From: Florian Rivoal <florianr@opera.com>
- Date: Wed, 09 Nov 2011 10:49:56 +0100
- To: www-style@w3.org
On Wed, 09 Nov 2011 00:44:21 +0100, Tim Tepaße <tim.tepasse@me.com> wrote: > Hi, > > I've got an edge case for text-tranform:uppercase when the to uppercased > text contains an "ß". > [...] > You can anticipate my thinking: If there's a new character in town and > there's a usage of writing names not using the traditional uppercasing: > why shouldn't I use this in the web? But for reasons of machine > readability I'd rather not have "TIM TEPAẞe" in my DOM but the > titlecase'd variant. > > text-transform: uppercase fails to fullfil this wish. Frankly I don't > know how this mini problem could be solved in the CSS ecosystem. A new > value for text-transform clearly would be overkill; a new property too. > CSS 3 Fonts has some new properties for picking ligatures out of fonts, > but then the new capital sharp S isn't a ligature but a character. Or my > understanding of OpenType features is just lacking. Recently, we have been discussing the possibility of introducing a mechanism let authors define their own text transform, to deal with rare or edge cases. Don't pay too much attention to the syntax, just to the concept, but here is what it might look like. The following creates text transform that converts ß to ẞ and does the same thing as text-transform:uppercase on all other characters. @text-transform special-german-uppercase { convert: "ß" to "ẞ"; convert-predefined: uppercase; } You would use it this way: address > a { text-transform: custom(special-german-uppercase); } Do you think this would solve your problem? I think it does, and I'd like to include your problem in the list of use cases to consider when we try to define exactly how this mechanism would work. - Florian
Received on Wednesday, 9 November 2011 09:50:43 UTC