2013-04-08 91 views
1

我有样式表文件,并希望禁用IE7和IE8浏览器中的一些CSS标签,如何做到这一点?我不想把这些标签放在单独的css文件中,我想保留在一个文件中。从这里禁用IE7和IE8的CSS样式

+0

与“禁用CSS标签”你说话隐藏标记中的一些元素?你能告诉我们一个具体的例子吗? – fcalderan 2013-04-08 10:18:45

+0

告诉我们的CSS,所以我们可以提供一个例子。 – 2013-04-08 10:19:45

回答

3

我建议采用HTML5样板文件outlined here by Paul Irish。基本上,这样设置你的文档:

<!DOCTYPE html> 
<!--[if lt IE 7]>  <html class="no-js lt-ie9 lt-ie8 lt-ie7"> <![endif]--> 
<!--[if IE 7]>   <html class="no-js lt-ie9 lt-ie8"> <![endif]--> 
<!--[if IE 8]>   <html class="no-js lt-ie9"> <![endif]--> 
<!--[if gt IE 8]><!--> <html class="no-js"> <!--<![endif]--> 

你现在已经有了准确定位某些版本的IE的类。你的CSS看起来就像这样:

.element { margin-bottom: 20px; } 
.lt-ie8 .element { margin-bottom: 10px; } 

然后你避免CSS黑客,并可以把一切都在一个单一的样式表。

由于@丹尼尔说,这不是禁用样式,而是超越它们。如果由于某种原因,你想发送样式到只有现代浏览器和较新的IE,你可以添加另一个类到上面的最后html标签,并使用它。

+0

覆盖的CSS样式是我需要! – Tomas 2013-04-08 14:13:02

1

如果您尝试有特定的样式表仅适用于IE它是这样的:

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

更多关于这家在这里:How To Create an IE-Only Stylesheet