Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Internet Explorer does not change 'ß' (ß/es-zed) to 'SS' when using 'text-transform: uppercase;'

Internet Explorer 9 and 10 do not change the German es-zed "ß" (ß, 'sz') to "SS" properly when using the CSS rule text-transform: uppercase;. Is this simply not implemented or is it a bug that I can handle somehow in a way of not replacing all "ß" manually?

like image 656
insertusernamehere Avatar asked Feb 24 '13 19:02

insertusernamehere


People also ask

Can I still use Internet Explorer after June 15 2022?

This is a reminder that Microsoft plans to retire and end support for the Internet Explorer 11 (IE11) desktop application on most versions of Windows 10 on June 15, 2022.

How do I reset IE security settings?

Open Internet Explorer, select Tools > Internet options. Select the Advanced tab. In the Reset Internet Explorer Settings dialog box, select Reset. In the box, Are you sure you want to reset all Internet Explorer settings?, select Reset.

What is happening with Internet Explorer?

Internet Explorer (IE) 11 is the last major version of Internet Explorer. On June 15, 2022, the Internet Explorer 11 desktop application ended support on certain versions of Windows 10*. Customers are encouraged to move to Microsoft Edge, which provides support for legacy and modern websites and apps.


1 Answers

This is a feature. CSS 2.1 does not define what uppercase and lowercase mean, and IE 9 treats U+00DF LATIN SMALL LETTER SHARP S “ß” so that its uppercase mapping is U+1E9E LATIN CAPITAL LETTER SHARP S “ẞ” (there is a difference, though it can be difficult to see). This happens in “standards mode”; in Quirks Mode, IE 9 treats “ß” as its own uppercase mapping.

The feature is odd, because the normal way is to map “ß” to “SS”, and the uppercase “ẞ” was added some years ago for optional use in the relatively few situations where words are uppercased so that the distinction between e.g. the names Strauss and Strauß must be retained

The CSS 3 Text Working Draft specifies that case mappings shall be applied according to Unicode, and they map “ß” to “SS”. If it will become a recommendation, then the feature turns into a bug.

As a rule, doing case mappings in CSS is unreliable. It is better to generate the content in proper case, performing mappings server-side if needed. Then you can handle any special cases separately. You could also use client-side JavaScript; in JavaScript, case conversions are Unicode-aware (one of the few areas where JavaScript has been well globalized).

like image 66
Jukka K. Korpela Avatar answered Nov 16 '22 00:11

Jukka K. Korpela