使用 HTML 和 CSS 明确定位 IE 版本,无需破解
如果您不想对 CSS 进行修改,请使用此方法。添加一个浏览器独有的类<html>
元素,以便您稍后可以根据浏览器进行选择。
Example
<!doctype html>
<!--[if IE]><![endif]-->
<!--[if lt IE 7 ]> <html lang="en" class="ie6"> <![endif]-->
<!--[if IE 7 ]> <html lang="en" class="ie7"> <![endif]-->
<!--[if IE 8 ]> <html lang="en" class="ie8"> <![endif]-->
<!--[if IE 9 ]> <html lang="en" class="ie9"> <![endif]-->
<!--[if (gt IE 9)|!(IE)]><!--><html lang="en"><!--<![endif]-->
<head></head>
<body></body>
</html>
然后在你的 CSS 中你可以非常严格地访问你的目标浏览器。
Example
.ie6 body {
border:1px solid red;
}
.ie7 body {
border:1px solid blue;
}
欲了解更多信息,请查看http://html5boilerplate.com/
使用CSS“Hacks”的目标IE版本
更重要的是,这里有一些可以让您针对 IE 版本的技巧。
使用“\9”来定位 IE8 及更低版本。
使用“*”针对 IE7 及更低版本。
使用“_”来定位 IE6。
Example:
body {
border:1px solid red; /* standard */
border:1px solid blue\9; /* IE8 and below */
*border:1px solid orange; /* IE7 and below */
_border:1px solid blue; /* IE6 */
}
更新:目标IE10
IE10 无法识别条件语句,因此您可以使用它来将“ie10”类应用于<html>
element
<!doctype html>
<html lang="en">
<!--[if !IE]><!--><script>if (/*@cc_on!@*/false) {document.documentElement.className+=' ie10';}</script><!--<![endif]-->
<head></head>
<body></body>
</html>