Html CSS仅针对IE10及以下版本(不是IE11)?
对于IE10及以下版本,是否有一种直接的方法针对CSS?IE11工作得很好(现在支持我使用的CSS),但我需要为下面的任何内容添加特定的CSS 我知道我可以用这个直到IE9:Html CSS仅针对IE10及以下版本(不是IE11)?,html,css,internet-explorer,Html,Css,Internet Explorer,对于IE10及以下版本,是否有一种直接的方法针对CSS?IE11工作得很好(现在支持我使用的CSS),但我需要为下面的任何内容添加特定的CSS 我知道我可以用这个直到IE9: <!--[if IE 7 ]> <html class="ie7"> <![endif]--> <!--[if IE 8 ]> <html class="ie8"> <![endif]--> <!--[if IE 9 ]> <html
<!--[if IE 7 ]> <html class="ie7"> <![endif]-->
<!--[if IE 8 ]> <html class="ie8"> <![endif]-->
<!--[if IE 9 ]> <html class="ie9"> <![endif]-->
但是IE10中不支持条件注释,我不想在content meta标记中以IE9为目标,因为我想在默认情况下使用11/Edge(我不想停留在过去!)
使用特定于IE的媒体查询不是一个选项,因为这也会将CSS应用于IE11,这是我不想做的。我之所以只针对IE11以下的任何内容,是因为我有一套“备份”CSS,当无法应用默认的“适当”CSS(可与IE11、Chrome、Firefox等一起使用)时,我希望应用这些CSS
我还尝试了反向操作——将备份CSS作为默认CSS,然后将好的CSS作为特定目标:
IE11+使用\uMS全屏:root
Chrome使用@支持(-webkit外观:无)
Firefox使用@支持(-moz外观:meterbar)
但这并没有起作用,因为IE11仍在使用部分默认CSS。Chrome和Firefox正确地显示了特定的CSS,但是其他网站样式也有各种各样的问题
关于如何在不同时瞄准IE11的情况下专门瞄准IE10,有什么想法吗
谢谢请不要检查浏览器,而是检查您试图使用的功能。Modernizer允许检查当前浏览器是否支持特定功能-> 此外,在IE 11中检查浏览器也不会像您预期的那样工作,他们将代理名称从IE更改为Mozilla()
这里有更多关于@support and Modernizer->(向下滚动一点)的信息,我刚刚在一个网站上使用了这一点,我正在为一个客户针对IE10和IE11:
var doc = document.documentElement;
doc.setAttribute('data-useragent', navigator.userAgent);
var userAgent = $('html').attr('data-useragent');
if ( userAgent.indexOf('MSIE 10.0') >=0 || userAgent.indexOf('Trident') >=0 ) {
/* YOUR CODE */
}
这会将属性data useragent添加到HTML元素中,并使用navigator.useragent(识别浏览器的一种好方法)填充该元素。然后它使用'if'参数来检测该属性中的特定字符串,例如IE10有MSIE 10.0,IE11有Trident
希望这对别人有帮助 30秒后在谷歌上找到了这些链接。请查收。tyI已经尝试过了——前两个使用JavaScript,我正在寻找CSS答案,第三个影响IE11以及它使用媒体查询。没有必要投反对票。对不起,我没有投你反对票。我刚刚给了你链接。我的错误,对不起:)谢谢这些-我希望不必钻研Modernizer(正在寻找一个快速的胜利),但我会进一步研究这个问题。我知道IE10不支持我想使用的功能,这就是为什么我想应用替代CSS(框阴影而不是边框图像)。感谢
@不支持
看起来像是我想要的!我会试一试的,谢谢!永远不要满足于速胜。第一次就做好:D,不客气;)添加了Modernizer和使用.borderimage
和。在相关CSS完美工作之前,不要使用borderimage
!谢谢