对于我在网上看过的所有内容,我从未得到过条件CSS样式表。
我有一个div#logo-container,我很好用中心使用CSS3。对于IE8及以下版本,我需要为它指定一个位置,因为它部分在屏幕外。
我的标题中有:
<!--[if lte IE 8]>
<html class="ie8">
<![endif]-->
<!-- [if gt IE 8]>
<html>
<!--<![endif]-->
...在我的样式表中,我有:
#logo-container{
...CSS3 styling...
}
.ie8 #logo-container{
...new styling...
}
但是在IE开发者工具中,当我模仿IE8时,新的样式不起作用,尽管如果我在样式面板中手动更改它它可以正常工作。
我有什么不明白的?谢谢!
答案 0 :(得分:0)
您的代码看起来大致正确,但我不确定类选择器中ID选择器的特殊性,因此这可能是一个问题。键入<html>
元素也可能存在问题。
仅在条件DIV上使用ID选择器工作得很好,这里是我使用的方法:
<html>
<body>
<!--[if lte IE 8]><div id="ie8"><![endif]-->
... Your content ...
<!--[if lte IE 8]></div><![endif]-->
</body>
</html>
CSS:
#logo-container {
...CSS3 styling...
}
#ie8 #logo-container {
...new styling...
}
答案 1 :(得分:0)
我有什么不明白的?
这就在这里:
但是在IE开发者工具中,当我模仿IE8时,新的样式并没有生效,不过如果我在样式面板中手动更改它,它就会起作用。
遗憾的是,测试旧版本的IE并不方便。当您在IE中使用开发人员工具时,您实际上 特别是如果您使用IE10或更新版本,因为它们不再支持您使用的条件注释。
最好的方法是运行虚拟机,并安装旧版IE。
Microsoft目前在modern.ie上提供了相应的工具。只需选择要测试的版本并将其下载到所需的虚拟机平台即可。在撰写本文时,他们支持HyperV,VirtualBox,VMware和VPC。
简而言之:您的代码是正确的,它是您测试/模拟导致问题的方法。