这个问题背后的罪魁祸首当然是IE6,(几乎)每个人都同意一个网站应该支持IE6,因为它被超过15%的访问者使用(对于雅虎来说,它仍然是一个A级浏览器)。
IE6 不支持 CSS 2.1,那么我们可以在样式表中使用 CSS 2.1 选择器吗?让我举个例子吧:
<body>
<div class="header">
</div>
<div class="content">
<h1>Title</h1>
<p>First paragraph</p>
<p>Second paragraph</p>
</div>
<div class="footer">
</div>
</body>
我的 CSS 可能如下所示:
body > div {width: 760px;} /* header content and footer = 760px wide */
h1 + p { margin-top: 5px;} /* the first paragraph after the h1 tag should have a smaller margin */
但是 IE6 不会理解这一点,所以无论如何要与浏览器兼容,我应该这样写:
.header, .content, .footer { width:760px; }
可能我必须给第一段一些类名并在我的css中定义它。我可以制作一个特定于定义这些规则的IE6 样式表,但这似乎是双重的(并且在第一段需要类名的情况下仍然无济于事)......