html - 有没有办法让 IE6 在遇到 '>' 时优雅地失败?

标签 html css internet-explorer-6 css-selectors

众所周知,IE6 不支持使用 > 的直接后代选择,但我最近发现,如果你有多个用逗号分隔的选择规则,如果其中一个有>

这是我用来测试问题的一段代码:

<body>
    <style>
        .one, .two{
            width: 100px; 
            height: 100px;
            background-color: #FFCCAA;
        }
        body .two, body > .one{
            background-color: #CCFFAA;
        }
    </style>
    <div class="one"></div>
    <div class="two"></div>     
</body>

我假设(没有阅读文档)这是预期的行为,因为当您编写 AAA, BBB 时,您实际上并没有定义两个选择器,而是一个包含两个部分的选择器。

我还是要问...有什么解决方案不意味着我的 CSS 规则要写两次吗?

谢谢你,
阿林

附言使用 JavaScript 是 Not Acceptable 。

最佳答案

您遇到的行为是 standard CSS error recovery 的一部分, 所以 IE6 是正确的(对于不支持 CSS2 的浏览器)。

您需要复制规则,并单独使用 CSS2 选择器:

<style>
    body .two {
        background-color: #CCFFAA;
    }
    body > .one  {
        background-color: #CCFFAA;
    }
</style>

关于html - 有没有办法让 IE6 在遇到 '>' 时优雅地失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4407322/

相关文章:

css - 如何删除CSS中div之间的空白区域?

javascript - 如何使用 jQuery 获取特定元素

html - 选择前选项内的图标

javascript - 如何使用 Bootstrap 为点击的元素创建具有滚动和溢出功能的 Facebook 固定侧边栏?

html - 链接在 IE6 中消失,在它之前添加链接时重新出现

html - bootstrap table-striped in multiple tbody with double tr

html - 下拉菜单打不开

HTML/CSS - dd 和 dt

html - Internet Explorer 7 菜单换行

jquery - Internet Explorer 7 jquery 幻灯片布局