CSS中的下划线"_"代表什么意思?

42

我刚在一个CSS文件中发现了以下代码片段:

position: fixed;
_position: absolute;

第二个 position 语句前面的下划线是什么意思?

3个回答

56

这是用于针对特定版本的Internet Explorer的CSS“黑科技”之一。

selector {
    property: value;   /* all browsers */
    property: value\9; /* < IE9 */
    *property: value;  /* < IE8 */
    _property: value;  /* < IE7 */
}

一般而言,你应该避免使用CSS hack,而是采用HTML条件类


42

这是一个针对 IE5, 5.5 & 6 的旧版 CSS Hack
所有浏览器都将显示 position:fixed,而IE5-6使用 _position,因此它将其显示为 absolute

但请注意:此CSS不会验证!并且不适用于 IE5/MAC


2

这是一种为WinIE浏览器提供替代指令的方法,因为它们不支持最新CSS定义的某些特性。其他浏览器将忽略整个定义(例如 _position: relative),而WinIE将把它视为position: relative。


2
请注意,这个问题在IE7中已经被修复,因此这个hack只对IE6及以下版本有用。 - nullability

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接