2

我正在尝试针对IE的课程。但是,由于样板模板已更改,因此不再有效。如何使用新的HTML5 Boilerplate定位IE9?

.myclass { 
//do something 
} 


.ie7 .myclass { 
///do something 

} 

这是样板模板新标题中的内容。

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

回答

17

我们不建议您针对IE9,因为它有一个现代的浏览器,这就是为什么我们没有具体的IE9有条件类的所有标记。如果您仍然想,您可以使用:

<!doctype html> 
<!--[if lt IE 7]> <html class="no-js lt-ie9 lt-ie8 lt-ie7" lang="en"> <![endif]--> 
<!--[if IE 7]> <html class="no-js lt-ie9 lt-ie8" lang="en"> <![endif]--> 
<!--[if IE 8]> <html class="no-js lt-ie9" lang="en"> <![endif]--> 
<!--[if IE 9]> <html class="no-js lt-ie10" lang="en"> <![endif]--> 
<!--[if gt IE 9]><!--> <html class="no-js" lang="en"> <!--<![endif]--> 

请注意IE10 will not recognize conditional comments

+1

很高兴我发现了这个。盒子阴影在IE9和IE10中被窃听。这对于解决IE9中的问题将派上用场。不幸的是IE10将不得不仍然是我想的问题。 :( – jkupczak 2012-10-03 19:04:46

+1

我必须说,如果要使用这种解决方法,将lt-ie10类包含到所有条件注释中,而不仅仅是在IE 9中,这样选择器.lt-ie10可以用于*所有* IE之前10 :) – dimsuz 2012-11-28 13:15:38

+0

我不得不针对IE9由于错误的'头'里面的填充calculcation当头部内的字体大小在EM的 – 2012-12-13 20:11:12

0

牦牛锅板!无论如何:

.lt-ie9.lt-ie8 .myclass {} 

应该做你想做的。

编辑

对不起,因为你把IE7例如误解你的问题。如果你想IE9,你可以这样做:

.myclass {} 
+0

正确!但是,那只会针对IE7。 “lt”意味着少于那么。所以.lt-ie9将针对IE8。我需要瞄准IE9以及..所以将其更改为.lt-ie10不起作用...任何想法? – user992731 2012-02-10 19:41:28

+0

以及我需要针对IE浏览器:“color:transparent;”据我所知它不被支持。 – user992731 2012-02-10 21:28:32