考虑这样一个场景,CSS属性缺少单元(PX,EM,PT%):回退的CSS属性没有单位
<body>
<div
style= "width:170;
border:1 dotted PaleGreen;
background-color:MistyRose">
The quick brown
</div>
</body>
问题:
- 为什么它会回退到PX?像素始终是首选单位? W3C工作草案或建议中是否定义了任何规则?
- 是否有强制让UA退回到首选设备的规则?
- 鉴于上述示例,其下面的是一个正确的行为:
- Internet Explorer中:在怪癖模式(IE6,5,4 ..)宽度和边界宽度用于回退到像素。由于IE7(直到现在,IE10RP)它忽略了整个规则,如果单位丢失。因此两条规则都被忽略了。
- Firefox 13:在上面的例子中宽度回退到px,但是border-width被忽略。
- Chrome 19,Opera 12,Safari 5.1.2:宽度和边框宽度均回退到px。
注:在微软连接,他们说:
你举报的问题是由设计。标准模式下的IE10会忽略没有符合CSS标准的单元的宽度或高度。 本机不是可选的。
这是一个正确的答案。当我使用HTML5的文档类型'<!DOCTYPE html>'时,所有上述浏览器忽略宽度和边框。我从来不知道其他浏览器在怪癖模式下也表现不同。谢谢! –