Modernizr & HTML5
What is Modernizr?
Modernizr adds classes to the <html> element which allow you to target specific browser functionality in your stylesheet. You don't actually need to write any Javascript to use it.
Have you ever wanted to do if-statements in your CSS for the availability of cool features like border-radius? Well, with Modernizr you can accomplish just that! The syntax is very intuitive, too:
.multiplebgs div p {
/* properties for browsers that
support multiple backgrounds */
}
.no-multiplebgs div p {
/* optional fallback properties
for browsers that don't */
}
Modernizr is a small and simple JavaScript library that helps you take advantage of emerging web technologies (CSS3, HTML 5) while still maintaining a fine level of control over older browsers that may not yet support these new technologies.
Modernizr uses feature detection to test the current browser against upcoming features like rgba(), border-radius, CSS Transitions and many more. These are currently being implemented across browsers and with Modernizr you can start using them right now, with an easy way to control the fallbacks for browsers that don’t yet support them.
Additionally, Modernizr creates a self-titled global JavaScript object which contains properties for each feature; if a browser supports it, the property will evaluate true and if not, it will be false.
Lastly, Modernizr also adds support for styling and printing HTML5 elements. This allows you to use more semantic, forward-looking elements such as <section>, <header> and <dialog> without having to worry about them not working in Internet Explorer.
What Modernizr doesn't do
Modernizr does not add missing functionality to browsers; instead, it detects native availability of features and offers you a way to maintain a fine level of control over your site regardless of a browser’s capabilities.
However if you're interested in that, you'll probably want to look here: HTML5 Cross browser Polyfills.
Who uses Modernizr?
Twitter, American Eagle, Burger King, The Knot, Capital One, Posterous, NFL, The State of Texas, Good Magazine, UC Santa Cruz, Made By Many, Hardboiled Web Design, Lost World’s Fairs, Clusterr, LittleIpsum, and Strategy Design & Advertising
Modernizr detects support for:
- @font-face
- Canvas
- Canvas Text
- HTML5 Audio
- HTML5 Video
- rgba()
- hsla()
- border-image:
- border-radius:
- box-shadow:
- text-shadow:
- opacity:
- Multiple backgrounds
- Flexible Box Model
- CSS Animations
- CSS Columns
- CSS Gradients
- CSS Reflections
- CSS 2D Transforms
- CSS 3D Transforms
- CSS Transitions
- Geolocation API
- localStorage
- sessionStorage
- SVG
- SMIL
- SVG Clipping
- Inline SVG
- Drag and Drop
- hashchange
- History Management
- applicationCache
- Touch events
- Web Sockets
- Web Workers
- Web SQL Database
- WebGL
- IndexedDB
- Input Types†
- Input Attributes‡
A green checkmark behind a feature indicates your current browser supports this.
Modernizr also enables you to use more semantic elements from the HTML5 spec, even in Internet Explorer. See the documentation for details.
- Version: 1.7
- Compressed size: 3.7 kb gzipped
Download 41kb uncompressed version
Recent Posts