有一个希腊文字的网站,其中我有这个div我已应用样式文本转换:大写.
小写:Υπηρεσίες
转换为大写:ΥΠΗΡΕΣΊΕΣ
因此它在IE8中的确是以大写字母显示文字,除了一个字母“ς”
所以在IE8上它显示如下:ΥΠΗΡΕΣΊΕς
这适用于所有浏览器(FF,Chrome,IE9,IE10,IE11),但不适用于IE8.
那么它将“σ”转换为“Σ”但不会改变“ζ”
是否有人为此提供任何CSS解决方案.?
最佳答案
这是浏览器中的错误/缺陷.根据规范,text-transform
必须应用Unicode案例映射规则,其中包括将最终的小sigma“ς”映射到大写sigma“Σ”. (它们也应该以将word-final“Σ”映射到“ς”的方式进行大写到小写映射,但这是一个不同的问题,而且更复杂.)但是有些浏览器仍然没有做到这一点.
CSS中没有任何内容可以解决这个问题.客户端,你可以做的是拥有通过在内容中进行转换来修复此问题的JavaScript代码.但是在服务器端做它会好得多.如果您希望以这种方式显示内容,或者(如果它来自外部源),请使用您正在使用的任何服务器端工具进行映射.
请注意,当您尝试使用CSS大写希腊语文本时,您还有其他问题.正如屏幕截图所示,带有tonos“ί”的小iota已经转换为大写“Ί”的首都iota.当大写单词时希腊规则不正确; tonos(尖锐的口音)应该省略.大多数浏览器都没有这样做(Firefox确实如此).