Safari - Browse the web in smarter, more powerful ways.

iPhone 4Sの発表に合わせて、iOSも最新版となる「iOS 5」が登場した。iOS 5で導入された新機能はどれも魅力的なものだが、WebアプリケーションやWebサイトの開発者、Webデザイナにとって最大の関心ごとは、iOS 5の「Safari」がどのような新機能に対応しているか、だろう。Net Applicationsの報告によればモバイルデバイスにおけるブラウザシェアはSafariが55%を超えており支配的な立場にある。モバイル向けアプリやコンテンツの開発や制作において無視できない存在といえる。

そうした場合に役立つ情報が「Safari on iOS 5, HTML5 evolution for iPhone and iPad」に掲載されている。iOS 5のSafariで新しく導入された機能をまとめている。どういった機能が追加されたのかが把握できて参考になる。特に興味深い新機能をまとめると次のとおり。

  • リーダーモードのサポート。コンテンツの内部構造がよく整理されている場合、アドレスバーに「Redaer」のボタンが自動的に表示されるようになり、このボタンを押すとリーダーモードが起動し、モバイルデバイスからの閲覧がより優れた状態に切り替わるようになる。リーダーモードを制御するためのAPIは提供されていない。
  • Web Workers APIのサポート。メインUIのスレッドとは別枠で処理を実施することができ、ユーザ体験の改善が期待できる。
  • input要素のタイプとして新しくrange、date、time、datetime、month、datetime-localに対応。rangeなどはネイティブアプリのようなUIが表示される。
  • 簡単なインラインSVGデータの埋込みに対応。
  • add、remove、toggle、containsなどの操作を提供する新しい属性「classList」をすべてのDOMノードでサポート。
  • contenteditable属性に対応。こうした機能を活用したリッチエディタ系WebアプリケーションがiOS 5のSafariで動作するようになった。
  • 閲覧履歴データの管理用API提供。
  • Canvas要素のレンダリングにハードウェアアクセラレーションを使用。
  • MathMLのサポート追加。
  • コンパス情報にアクセスする新しいDeviceMotion APIの提供。
  • JavaScriptファイル読み込みにasyncおよびdeferを指定可能。

iOS 5のSafariは現在策定が進められているHTML5のすべての機能をサポートしているわけではないが、多くの機能に対応してきたことがわかる。モバイルデバイスにおいて過半数を占めるブラウザであり、Safariがサポートする機能はモバイルコンテンツで使用するひとつの基準として参考になる。