0

再会

我正在使用条件样式表来定位 IE7 和更低版本,以及 IE8 和 IE9。

现在的问题是它们相互覆盖:

场景:我将样式应用于 IE 8 和 9。在 IE7 中,该样式不正确,因此我在仅 IE7 样式表中应用了新样式来修复它。它不会在 IE7 样式表中选择新样式,除非我使用 !important。但是当我在 IE-7 样式表中使用 !important 时,它会再次覆盖 IE8 和 9 样式...

为什么??

谢谢

MY 包含的代码应用了示例样式:

HTML:

<head>...

 <!--[if IE 7]>
    <link rel="stylesheet" type="text/css" href="../ie7-only.css" />
    <![endif]-->

    <!--[if lt IE 9]>
    <link rel="stylesheet" type="text/css" href="../ie8-only.css" />
    <![endif]-->

    <!--[if IE 9]>
    <link rel="stylesheet" type="text/css" href="../ie9-only.css" />
    <![endif]-->
</head>

CSS:

in IE 8 and 9:

#menuNav ul li#login{                
                float: right;
                margin: 0px;
            }

In IE7:

#menuNav ul li#login{                
                float: none;
                margin: 0px;
            }

每当我对任何使用 !important 时,它都会相互覆盖...

为什么 IE9 和 8 采用 IE7 风格?反之亦然...

4

1 回答 1

1

将您的评论替换为:

<!--[if IE 7]>
<link rel="stylesheet" type="text/css" href="../ie7-only.css" />
<![endif]-->

<!--[if IE 8]>
<link rel="stylesheet" type="text/css" href="../ie8-only.css" />
<![endif]-->

<!--[if IE 9]>
<link rel="stylesheet" type="text/css" href="../ie9-only.css" />
<![endif]-->
于 2013-03-07T12:51:20.370 回答