2013-02-24 8 views
6

Internet Explorer 9 e 10 non cambiano il tedesco es-zed "ß" (ß, 'sz') su "SS" correttamente quando si utilizza la regola CSS text-transform: uppercase;. Questo semplicemente non è implementato o è un bug che posso gestire in qualche modo in un modo di non sostituire tutti "ß" manualmente?Internet Explorer non cambia 'ß' (ß/es-zed) in 'SS' quando si utilizza 'text-transform: uppercase;'

+0

possibilmente correlato alla localizzazione. Presuma che il sito sia in tedesco; hai impostato le intestazioni di pagina per specificare la lingua? – Spudley

+0

Sì, UTF-8 viene utilizzato, il file è anche codificato in UTF-8 e la lingua è impostata su "" de "'. – insertusernamehere

risposta

15

Questa è una funzionalità. CSS 2.1 non definisce cosa significano maiuscolo e minuscolo, e IE 9 considera U + 00DF LATIN SMALL LETTER SHARP S "ß" in modo che la sua mappatura in maiuscolo sia U + 1E9E LATIN CAPITAL LETTER SHARP S "ẞ" (c'è una differenza, sebbene può essere difficile da vedere). Questo succede in "modalità standard"; in modalità Quirks, IE 9 considera "ß" come la propria mappatura in maiuscolo.

La funzione è dispari, perché il normale modo è quello di mappare “ß” a “SS”, e il maiuscolo “ẞ” è stato aggiunto qualche anno fa per opzionale uso nelle relativamente poche situazioni in cui le parole sono uppercased in modo che la distinzione tra ad es i nomi Strauss e Strauß devono essere conservati

Il Draft di lavoro CSS 3 Text specifica che i mapping dei casi devono essere applicati secondo Unicode e mappano "ß" in "SS". Se diventerà una raccomandazione, la funzionalità si trasformerà in un bug.

Come regola generale, la mappatura dei casi in CSS non è affidabile. È meglio generare il contenuto nel caso appropriato, eseguendo mapping sul lato server, se necessario. Quindi puoi gestire ogni caso speciale separatamente. È anche possibile utilizzare JavaScript sul lato client; in JavaScript, le conversioni del caso sono a conoscenza di Unicode (una delle poche aree in cui JavaScript è stato ben globalizzato).

+0

Questa è una risposta fantastica. Molte grazie. – insertusernamehere

+0

Lascia che sia una domanda. Mi stavo chiedendo: il testo in maiuscolo non è trattato diversamente dai motori di ricerca? Quindi sono curioso di pagine in cui tutte le intestazioni sono in maiuscolo. Potrebbe essere problematico quando il testo è già pre-elaborato? – insertusernamehere

+0

@insertusernamehere, per quel problema potresti voler aprire una nuova domanda, ma gli attuali motori di ricerca sembrano ignoranti. Potrebbero non riuscire a trattare ß e ẞ come equivalenti tra loro e a SS e SS, però. Aggiungerò una nota sul fare cose sul lato client. –

Problemi correlati