Web標準Blogでは、Web標準の利用に興味のあるWebサイト管理者、Webデザイナーの方向けに、Web標準を利用するための手法やノウハウ、参考になるリソース等を、国内外を問わずご紹介します。
なお当Blogでは、Web標準に関する疑問や質問を募集しています。Webコンテンツ実装プロセスにまつわるお悩みでも結構ですので、お気軽に電子メールでstandards@mitsue.co.jp宛にお送りください。
2009年5月 1日
IE8の実際のシェアは?
フロントエンド・エンジニア 矢倉
3月の下旬にIE8がリリースされてから一月以上が経過しましたが、シェアの推移はどうなっているのでしょうか。
Net Applicationsによる4月の統計では、先月より2%ちょっと増加し3.96%となっています。その代わりと言ってよいのかはどうか分かりませんが、IE7が2%減少しています。IE7は1%弱の増減が常だったので、IE8への乗換えが少しずつではあれ起こっているのではないかと推測できます。
さて、統計のとり方にもよるのですが、IE8のシェアは実際の利用者よりも少なく出てしまう可能性が存在します。というのも、IE8では互換表示が有効にされると、User Agentの文字列も変更されてしまうからです。
Internet Explorer 8 の User-Agent 文字列で詳しく触れられていますが、IE8では通常、次のようなUser Agent文字列が送信されます。
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)
しかし、互換表示が有効になると、User Agentが次のように変化します。
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Trident/4.0)
このため、User Agent文字列を判断して統計を取るタイプのスクリプトでは、IE8の互換表示であっても、単純に「MSIE 7.0」を見てしまい、IE7としてカウントするといったことが起こりうるわけです。
後方互換性のための機能ですので、スクリプトなどの判定などであれば良いのかもしれませんが、統計のようにユーザー環境を判断したい場合には、きちんと分けておきたいところです。
User Agent文字列からIE8を判別するには、コメント部分にある「Trident/4.0」を見る必要があります。これはIE8に搭載されているレンダリングエンジンのことで、Firefoxの「Gecko」や、Safariの「AppleWebKit」などに該当します。
Net Applicationsなど規模の大きなところであれば、既に対策しているか、またはUser Agent文字列に頼らないブラウザーの判定を行っていることが想像できますので、実利用者より少ないといったことはないでしょう。しかし、単純なアクセス解析スクリプトなどを自前で開発しているといった場合には、注意が必要です。

コメントする