我有一个CSS/jQuery复选框样式脚本:http://jsfiddle.net/BwaCD/
问题是,在当前的浏览器中,为了使span在输入上浮动,输入的位置必须是绝对的。但是在IE8 &下面,脚本将不能工作,因此我只剩下和绝对定位在其他元素之上的输入。我并不是要求脚本在IE8中工作&如下所示。
我想知道如何使用CSS来设置一个特定的样式,如果它是IE8和更低的样式。我想如果它是必要的话,jQuery是可以接受的,但我不认为它是。我知道这可以用CSS和HTML来完成,我只是不知道怎么做。
发布于 2012-01-15 23:27:43
发布于 2012-01-15 23:34:51
条件注释可以工作(<!--[if lte IE 8]><stylesheet><![endif]-->),但是如果您想在样式表中完成所有这些工作,则需要使用是一种
body {
color: red; /* all browsers, of course */
color: green\9; /* IE only */
}这里最重要的是"\9",它必须是“9”。我不清楚这到底是为什么。
编辑:仅靠\9黑客本身是不够的。要排除IE9,还需要黑客攻击
:root body {
color: red\9; /* IE9 only */
}除了IE之外,其他浏览器可能支持:root,所以如果您使用它来攻击IE9,那么将它与\9攻击结合起来。
发布于 2012-01-15 23:38:23
编辑(8月28日):请注意,以下答案实际上只适用于Internet,至少是版本8及更早版本。据我所知,现在没有主流浏览器支持条件注释,甚至Internet 11也不支持。
您可以使用Internet的条件注释将类名添加到较旧IE浏览器的HTML根标记中:
<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="en"> <![endif]-->
<!--[if IE 7]> <html class="no-js ie7 oldie" lang="en"> <![endif]-->
<!--[if IE 8]> <html class="no-js ie8 oldie" lang="en"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en"> <!--<![endif]-->然后,通过引用适当的类名,可以定义特定于IE的CSS,如下所示:
.ie8 body {
/* Will apply only to IE8 */
}来源:http://paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/
https://stackoverflow.com/questions/8874290
复制相似问题