Question: I am trying to set up some css selectors, and I need to set up several that I want to be ignored in IE8 (actually any IE < IE9, but that's ok).

Which selector can I safely use knowing that all browsers (including IE9) support the selector but IE8 fails?

In other words, I am looking to do something like

```
.someselectorthatfailsinie .mystyle { stuff for new browsers }

```

EDIT: What I am trying to do with CSS is target and style checkboxes and radio buttons. While IE8 supports SOME of this treatment -- the custom box -- it does not support the `input[type=checkbox]:checked + label:before` necessary for the pseudo checkboxes to work.

Therefore I wanted to "hide" the entire css effort from IE8, and let it show the default unstyled checkboxes.

Answer: 
add `noie` class for browsers higher than IE8 & other broswers.

```
<!DOCTYPE html>
<!--[if lt IE 8]><html lang="en" class="no-js dumbie"><![endif]-->
<!--[if (gt IE 8)|!(IE)]><!-->
<html class="no-js noie" lang="en">
<!--<![endif]-->
<head>

.noie .mystyle { stuff for new browsers }

```
I've found that **ES5 array methods** work for detecting IE8 and lower. I happened to use the forEach in my code.
<http://caniuse.com/#search=ECMAScript%205>

Using **Modernizr** you can check `.no-es5array` or `.es5array` in CSS and `Modernizr.es5array` in JS.
<https://modernizr.com/download?es5array-dontmin-setclasses&q=es5array>