Ste*_*eve 1 css internet-explorer internet-explorer-8 modernizr
我正在尝试设置一些css选择器,我需要设置几个我想在IE8中被忽略的(实际上任何IE <IE9,但没关系).
知道所有浏览器(包括IE9)都支持选择器但是IE8失败了,我可以安全使用哪个选择器?
换句话说,我希望做类似的事情
.someselectorthatfailsinie .mystyle { stuff for new browsers }
Run Code Online (Sandbox Code Playgroud)
编辑:我想用CSS做的是目标和样式复选框和单选按钮.虽然IE8支持这种处理 - 自定义框 - 它不支持input[type=checkbox]:checked + label:before伪复选框工作所必需的.
因此,我想从IE8"隐藏"整个css工作,并让它显示默认的无样式复选框.
有很多东西,即无法处理,我通常这样做:
.no-boxshadow .classname {border:1px solid #ddd}
转到http://caniuse.com/查看IE 8无法处理的内容.
VenomVendor答案的问题在于.noie .mystyle依赖于javascript来启用它以用于大多数现代的浏览器.这是很多工作.只需为现代浏览器设计您的网站,然后使用功能检测来处理旧浏览器.
最好添加一个条件语句,只是目标ie8或ie9,我的html看起来像这样,基于Boilerplate并避免将IE置于兼容模式.IE10及以上版本无法识别条件评论.
<!--[if IE ]><![endif]-->
<!doctype html>
<!--[if IE 8 ]> <html class="no-js lt-ie9 ie8" lang="en"> <![endif]-->
<!--[if IE 9 ]> <html class="no-js lt-ie10 ie9" lang="en"> <![endif]-->
<!--[if (gte IE 10)|!(IE)]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
<head>
Run Code Online (Sandbox Code Playgroud)
然后,如果我想获得ie8,我可以这样做:
.ie8 .class {styles for ie8}
Run Code Online (Sandbox Code Playgroud)
或IE 8及以下
.lt-ie9 .class {styles for less than ie 9}
Run Code Online (Sandbox Code Playgroud)