查看下面的HTML代码:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=9" />
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <body>
        <div style="opacity:0.5">Hello World</div>
    </body>
</html>


在英语IE9上,事情按预期进行,并且“ Hello World” div显示为具有所需的(50%)不透明度,但是在德语IE9上,div处于隐藏状态,并且通过在“ F12开发人员工具”中查看DOM,我可以看到不透明度的值为0,而不是0.5。此外,在为不透明度属性分配任何其他带有小数部分的值后,导致后者仅忽略小数部分就将其评估为整数部分(即opacity:22.34评估为22)。知道导致这种奇怪的CSS行为的英语IE9和德语IE9之间的区别是什么,如何解决(重要:我不想使用filter:alpha或-ms-filter等替代属性。 )?

最佳答案

非常奇怪的行为:S

我能想到的唯一想法是关于德语和英语中使用的小数点。在英语中,它是一个点(0.5);在德语中,它是一个逗号(0,5)。您可以尝试使用逗号查看发生了什么。但是,如果这是问题所在,那就非常奇怪了,因为我想表示法取决于CSS规范,而不取决于每个国家/地区使用的小数点。我还假设两个IE共享相同的内核,并且只有L10n(本地化)更改。

或者查看两个IE是否完全相同(无论是9还是9)。在某些版本中可能是一个错误。

关于css - 非英语IE9和CSS的不透明度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8819226/

10-13 00:47