考虑这样一种情况——CSS属性缺少单位(px、em、pt、%):
<body>
<div
style= "width:170;
border:1 dotted PaleGreen;
background-color:MistyRose">
The quick brown
</div>
</body>
问题:
- 为什么要回退到像素(px)?像素(px)是否总是首选单位?W3C工作草案或建议中是否定义了任何规则?
- 是否有一条规则使UA必须回退到首选单位?
- 针对上述示例,以下哪种行为是正确的:
- Internet Explorer:在怪癖模式下(IE6,5,4..),宽度和边框宽度会回退到px。自IE7以来(直至现在,IE10RP),如果单位缺失,则整个规则将被忽略。因此,这两个规则都被忽略了。
- Firefox 13:在上述示例中,宽度回退到px,但边框宽度被忽略了。
- Chrome 19、Opera 12、Safari 5.1.2:宽度和边框宽度均会回退到px。
注意:在Microsoft-Connect上,他们说:
您报告的问题已经得到设计。IE10在标准模式下遵循CSS标准,无单位的宽度或高度将被忽略。单位不是可选的。
<!DOCTYPE html>
时,所有前述浏览器都会忽略宽度和边框。我从未意识到其他浏览器在怪异模式下也有不同的行为。谢谢! - vulcan raven