ModernizrはHTML5/CSS3を機能単位で実装状況を判断するJavaScriptライブラリ。

ModernizrはJavaScript製のオープンソース・ソフトウェア。数年前まではブラウザによって動く機能、動かない機能というのがあった。それらを吸収するライブラリとしてPrototype.js/jQueryなどがもてはやされた。今、時代はHTML5に変わろうとしているが話はさらにややこしくなっている。


テスト

WebKitはブラウザバージョンという概念さえ持たない。Google Chromeが日々バージョンが変わっている。IEもバージョンが増えており、ブラウザによってHTML対応具合が細かく違っている。そんな中でHTML5を進める際に使ってみたいライブラリがModernizrだ。

Modernizrはブラウザごとの判断ではなく、機能ごとに使える/使えないを判断するライブラリだ。例えばCanvas Textが使えるか否か、Application Cacheが使えるか否かをメソッドで判断する仕組みだ。それはJavaScriptに限らずCSS3についても同様に判断できる。


一部実装されていない機能があるようだ

サポートされるブラウザはIE6以上、Firefox3.5以上、Opera9.6以上、Safari2以上そしてGoogle Chromeとなっている。さらにiOSのMobile SafariやAndroidのWebKitブラウザにも対応している。仕様が細かく分かれているHTML5だけに、機能単位で作り込んでいくModernizrの手法は自分たちに必要なものだけをピックアップできるので使いやすそうだ。

MOONGIFTはこう見る

WebサイトのHTML5を進める中で、そのAPIを全てまんべんなく使うということはほぼ考えられない。メジャーな機能を幾つか使いたいと思うくらいではないだろうか。そうした時にその機能が使えるブラウザなのか否かで判断する実装は面白い。

Modernizrとアクセス解析を使って、試しに使いたいと思っている機能に対応しているブラウザとそうでないブラウザとの統計を取ってみるのも面白そうだ。その結果をもって実装計画を考えても良いだろう。ブラウザバージョンだけで判断すると、いつまで経っても移行できない可能性があるからだ。

Modernizr

Modernizr/Modernizr - GitHub