我有这些HTML条件代码为IE 7,但他们似乎没有工作。HTML CSS IE7条款代码
<!--[if IE 7]>
<link rel="stylesheet" type="text/css" href="/css/stylesie.css" />
<![endif]-->
<link rel="stylesheet" type="text/css" href="/css/styles.css" />
是有什么问题他们还是我丢失的东西?
我有这些HTML条件代码为IE 7,但他们似乎没有工作。HTML CSS IE7条款代码
<!--[if IE 7]>
<link rel="stylesheet" type="text/css" href="/css/stylesie.css" />
<![endif]-->
<link rel="stylesheet" type="text/css" href="/css/styles.css" />
是有什么问题他们还是我丢失的东西?
如果您调整规则IE7在stylesie.css,那么就应该后加载原始的css文件:
<link rel="stylesheet" type="text/css" href="/css/styles.css" />
<!--[if IE 7]>
<link rel="stylesheet" type="text/css" href="/css/stylesie.css" />
<![endif]-->
规则具有相同specificity选择将覆盖旧的,所以IE7将首先解析stylesie.css并用styles.css覆盖那些规则。
Basic example of this behavior:
div, div.red{
color:red;
}
div{
color:blue;
}
这将导致一个蓝色的所有<div>
,除了一个标记与类red
。
从给定的信息我只能尝试猜测:对我来说,看起来"/css/styles.css"
覆盖了以后包含的一些CSS属性"/css/stylesie.css"
。所以我会尝试包括它之前:
<link rel="stylesheet" type="text/css" href="/css/styles.css" />
<!--[if IE 7]>
<link rel="stylesheet" type="text/css" href="/css/stylesie.css" />
<![endif]-->
我猜你插入它的位置是问题。您的页面首先加载IE定义,然后添加您的CSS应该是所有浏览器的“默认”CSS。现在,如果您的IE版本中存在相同元素的定义,那么它将简单地覆盖这些元素。
这应该工作。你可以提供演示吗?如果你想忽略'styles.css' for IE,请参阅[这个问题](http://stackoverflow.com/questions/9709715/using-two-conditional-css-if-statements-uses-neither-style-sheet )。 – 2012-03-17 15:40:36
谢谢Rob W. – user1269625 2012-03-17 15:51:34