繁体   English   中英

如何正确使用条件注释?

[英]How to use conditional comments correctly?

我可以在1个有条件的负载中编写所有IE错误的CSS吗?

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

如果我使用LT IE 9进行1条条件注释,是否可以在内部编写IE7和IE8的CSS,还是需要制作2种不同的样式表?

您在该条件注释中添加的所有内容将由相应的浏览器解释。 这意味着您可以在单个条件注释中放置多个链接标记。 但是在您的情况下,所有这些都将由IE 5、6、7和8解释。如果每个版本需要单独的样式表,则每个版本也需要单独的条件注释。

但是您绝对应该看一下此博客文章:

http://www.paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-nether/

此方法可以帮助您清除所有这些条件注释。

编辑:

这是一个例子:

HTML:

<!--[if IE]><html class="ie"><![endif]-->
<!--[if !IE]><!--><html><!--<![endif]-->
<head></head>
<body>
<h1>Foo!</h1>
</body>
</html>

CSS:

h1{
  font-size:2em;
}

.ie h1{
  /* will only apply to IEs - but all of them */
  font-size:1.5em;
}

如果要为每个版本的IE使用不同的样式表,则还需要为每个版本设置不同的条件。 链接到唯一的样式表。 lt代表“小于”,或者还有lte ,“小于或等于”。

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

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

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

或者,如果要对小于或等于9的所有 IE版本使用相同的样式表,请使用:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM