Selectors:
>(descendant)[attr](attribute).class1.class2(multiple classes)~(sibling)
CSS properties:
max-widthposition: fixed
Selectors/pseudos:
+(adjacent):first-child(unless for static elements):focus:before,:after(single colon only)
CSS properties:
outlinedisplay: inline-block(unless on<span>)display: tablewhitespace: pre-wrapwhitespace: pre-lineborder-collapse,border-spacing,table-layout, ...box-sizing
Features:
- PNG alpha transparency
data:URI
JS features:
- JSON parsing
- Cross-origin resource sharing
Selectors/pseudos:
:first-of-type,:last-of-type:last-child:empty:enabled,:disabled,:checked:not():nth-child(),:nth-last-child(),:nth-of-type(),:nth-last-of-type(),:only-of-type():only-child():target::selection
CSS properties:
background-clipbackground-originbackground-sizebackground: x, y, z(multiple backgrounds)opacityborder-radiusbox-shadowrgba()-ms-transform
CSS features:
@mediaqueries
HTML5 features:
<canvas><svg><img src='image.svg'>
CSS features:
-ms-animationtransitionlinear-gradient()
Features:
<input placeholder='..'><input type='range'>
HTML5 features:
- Web sockets
CSS properties:
text-shadow(polyfill)
Always install these in every project:
- selectivizr for selectors
- html5shiv for new HTML tags
- json2 for JSON parsing (IE7-)
You may also need these:
- [modernizr] for feature detection
- css3pie for CSS3 decorations
Also see:
- "Static" = doesn't work for elements inserted via JS