Web標準Blogでは、Web標準の利用に興味のあるWebサイト管理者、Webデザイナーの方向けに、Web標準を利用するための手法やノウハウ、参考になるリソース等を、国内外を問わずご紹介します。
なお当Blogでは、Web標準に関する疑問や質問を募集しています。Webコンテンツ実装プロセスにまつわるお悩みでも結構ですので、お気軽に電子メールでstandards@mitsue.co.jp宛にお送りください。
2009年07月30日
MicrosoftがECに宛てた相互運用性に関する提案
フロントエンド・エンジニア 矢倉
WindowsにInternet Explorerをバンドルしたことが競争法に違反するとして、欧州委員会がMicrosoftに申し立てを行っていた件ですが、先日Microsoftより新しい提案を行ったとのアナウンスがありました。
メディアでは主に、他のブラウザーを選択する画面の追加などが取り上げられていましたが、その他にもODFやiCalendarのサポートなど相互運用性に関する提案が、“Proposed Interoperability Undertaking”という文書にまとめられ公開されています。
その中でも気になるのが、Internet ExplorerのWeb標準サポートに関する箇所です。IE8がHTML 4.0, CSS 1.0, CSS 2.1に準拠したことに関する保証を行う発表のほか、次のようなことが書かれています。
(40) In any case where Internet Explorer does not pass a recommended conformance test provided for in the preceding paragraphs, MS shall completely and accurately document test suite failures and how Microsoft’s implementation differs from the standard based on the test suite results.
テストケースをパスしない機能については、どのように仕様と異なるのか、その詳細を文書化するとのことです。IEの挙動のうち「何が標準でないのか」が分かるのはありがたいですね。
(41) In line with the general provisions outlined in Section B.I., beginning on 31 March 2010, Microsoft shall make publicly available complete and accurate documentation of any variations or extensions it has made to the HTML 4.0, CSS 1.0, and CSS 2.1 specifications and to any other final approved web standards published by W3C (as “W3C Recommendations”), ECMA (as “Standards”), or ISO (as “International Standards”) as implemented by Internet Explorer. This documentation must be made available in a Timely Manner for any such web standards that are final approved by six months before the first sufficiently stable “beta” testing version of a new version of Internet Explorer. For any such web standards that are final approved later than this, Microsoft shall make such documentation available within six months.
HTML, CSSなどの仕様にはない拡張についても、その挙動を記したドキュメントを公開するようです。MSDNでもいくつか公開されていますが、"complete and accurate" とのことなので、期待してしまいます。
恒久リンク | コメント [0件] | 関連情報(トラックバック) [0件]
2009年07月24日
gihyo.jpにてWeb標準に関する連載を開始
フロントエンド・エンジニア 矢倉
gihyo.jpにて、連載「Web標準とその周辺技術の学び方」を始めることになりました。本日付で第一回が公開されています。
第一回は、あまり語られることの無いように思える、W3Cの標準化プロセスについてです。今後はWeb標準技術や仕様の関わりあいを中心に進めていこうと思っています。
もし「○○についてもっと知りたい」などありましたら、お気軽に standards@mitsue.co.jp までお送りください。できる限り調べた上で、連載またはここWeb標準Blogで取りあげようと思います。
恒久リンク | コメント [0件] | 関連情報(トラックバック) [0件]
2009年07月21日
アクセシブルなドラッグ&ドロップとは?
フロントエンド・エンジニア 矢倉
Opera Developer Communityにて、The Paciello GroupのGez Lemonにより、“Accessible drag and drop using WAI-ARIA” という記事が公開されていました。
ドラッグ&ドロップを利用するWebアプリケーションなどは増えていますが、それらのアクセシビリティに関する認知や取り組みは、まだまだという状態でしょう。記事では、問題の認識から具体的な対応方法までを詳しく解説しています。
ドラッグ&ドロップの問題は?
一言「アクセシビリティ」と書いてしまいましたが、ドラッグ&ドロップには具体的にどのような問題があるのでしょうか。Gezは、次のふたつの点から、ドラッグ&ドロップの持つアクセシビリティ上の問題を提起しています。
- 運動障害を持つ人にとっては、ドラッグ&ドロップという動作を行うことが難しい
- 視覚障害者は、ドラッグ対象となるオブジェクトの認知や、ドロップ元/ドロップ先の位置を知ることが非常に困難
WAI-ARIAとHTML5の利用で異なるUIを提供
Gezはこれらのを踏まえたうえで、WCAG 2.0の「すべての機能をキーボードから利用できるようにする」というガイドラインに従い、キーボード操作可能なドラッグ&ドロップについて考察しています。基本的には簡単としつつも、スクリーンリーダーなどの環境を考え、次の
- どのオブジェクトがドラッグ可能なのかを示す
- オブジェクトがドラッグ状態にあるかいないかを示す
- ドロップしたときに何が起こるのかを示す
- ドロップ先のターゲットを識別する
これを実現すにあたり、WAI-ARIAのaria-grabbedやaria-dropeffectプロパティや、HTML5のDrag and Drop APIが利用できると述べています。
そして、上で示した4点の情報を具体的なコードを織り交ぜながら説明しています。
記事では、アーティストの好き嫌いを分類するというデモも作成しています。キーボードでの移動ですが、選択したオブジェクトから移動先を選択するという新たなインターフェースが提供されています。
ですから、厳密には「キーボードでドラッグ&ドロップを実現する」というわけではないのです。ドラッグ&ドロップによって可能となる一連のタスクを、別のUIで実現しているものになります。
「キーボードで操作できる」からアクセシブルであるとは限らない
さて、デモを試したときに、すこし驚いたことがありました。記事をあまり読まずにデモを開いており、「矢印キーで上下左右に要素を動かせる」ようなものを考えていたので、デモで提供された異なるインターフェースを理解できなかったのです。
しかし、ちょっと考えてみると、矢印キーで要素を動かせたところで、先述した運動障害、視覚障害に関連する問題を解決できるわけではありません。「キーボードから利用できるようにする」というガイドラインを、「同じ挙動をキーボードで実現すること」と誤って解釈していたことに気づいて、ハッとさせられました。
ゴールをしっかりと見定め、解決するためのタスクをきちんと考えなければ、ちんぷんかんぷんな「アクセシビリティ対応」になるおそれがあることを、身をもって再認識させられた記事でした。
恒久リンク | コメント [0件] | 関連情報(トラックバック) [0件]
2009年07月21日
HTML5の構文解析がもたらすもの
フロントエンド・エンジニア 矢倉
WHATWGのBlogにて、開発版のGeckoにHTML5のparser (構文解析器) が導入された旨をアナウンスしています。
設定を変更することによりテストができるので、開発者の方は参加してほしいとのことです。
HTML5 Parserの特徴と、これまでのParserが抱えていた問題点
HTML5 parserにより、SVGやMathMLをtext/htmlな文書で利用できるようになります。HTML5では、これまでXHTMLをXMLで配信した時にしか扱えなかったSVGやMathMLが、HTML構文でも定義されてるようになりました。ですから、数式やベクターグラフィックに加え、フィルターによる視覚効果機能などをHTMLでも利用できるようになるのです。
しかし、SVGやMathMLのHTML対応だけが、HTML5 Parserの目的ではありません。これについては、jQueryの開発者であるJohn Resigが自身のBlogで簡単に紹介しています。
One of the biggest wins of the HTML 5 recommendation is a detailed specification outlining how parsing of HTML documents should work. For too many years browsers have simply tried to guess and copy what others were doing in hopes that their parser would work well enough to not cause too many problems with HTML markup found in the wild.
HTML文書の構文解析処理には、これまで仕様がありませんでした。ブラウザーは独自に処理を定義し実装していましたが、実装同士の非互換が問題とされていました。未知の要素や構文エラーなどの処理が規定されていないことが、HTMLの拡張を行うにあたって問題視されたのです。
互換性やエラーを考慮した処理規則
HTML5では、エラー処理も含め詳細な構文解析処理が定義されています。もちろん闇雲に定義したわけではなく、現在のブラウザーでどのように処理されているかをきちんと調べた上で、ブラウザー同士、そしてWeb上にあるHTML文書と互換性を最大限確保できるような仕組みを探しているのです。
該当するセクションはとても長く細かいのですが、エラー処理の例を紹介するサブセクションにて、<b><i></b></i>や<b><p></b></p>といったエラーのあるコードが、どのようなに処理されするのかが書かれています。
きちんと検証をして「綺麗な」文書を書いている方にとっては「このようなものは必要ない」と思うかもしれません。しかし残念ながら、Web上に公開されているHTML文書ははそのようなものだけはありません。そして、どのような文書もそれなりに処理することが求められるブラウザーにとって、こういった構文解析とエラー処理が定義されることは、とても重要なことなのです。
恒久リンク | コメント [0件] | 関連情報(トラックバック) [0件]
2009年07月03日
XHTML 2 WGが活動終了へ、XHTML 2.0も策定終了に
フロントエンド・エンジニア 矢倉
タイトルのとおりですが、XHTML 2.0をはじめとする各種XHTML仕様を策定していたXHTML 2 WGの活動が、年内で終了することがアナウンスされました。W3Cは、今後はHTML5に注力すると発表しています。
今後のXHTMLはHTML5で
XHTML 1.1などのメンテナンスは活動終了までに行うものの、次世代のXHTML仕様はXHTML2 WGで行いません。すなわち、XHTML 2.0の策定は終了ということになります。
今後のXHTMLは、HTML5で定義されます。名前が「HTML5」とあるため紛らわしいのですが、HTML5仕様にはXML構文も含まれており、これは「XHTML5」と便宜的に呼ばれています。XMLでもcanvasやvideo要素などを利用することができるのです。
「XHTML 2.0と統合する」というわけではありませんが、機能のほとんどすべてがXHTML5でもカバーできるとされています。
XHTMLの今後に関するFAQも公開
HTML5の策定については以前より「XHTMLを蔑ろにしている」といった誤解が多く見られます。今回の決定でさらに誤解が広まることを危惧したのか、「Frequently Asked Questions (FAQ) about the future of XHTML」という文書があわせて公開されています。先ほど日本語訳を公開しましたので、参考にしていただけたらと思います。
解決すべき問題の幅広さ、大きなテーマである「実装の互換性確保」など、HTML5の策定には時間がかかります。少しずつですが進んでいってくれればと思います。
恒久リンク | コメント [0件] | 関連情報(トラックバック) [1件]
2009年07月03日
2009年6月のW3C
フロントエンド・エンジニア 矢倉
新しいCSS3 Fonts Moduleの草案
CSS WGのJune 2009 F2Fですこし紹介しましたが、6月18日にWeb Fontsの機能を取り込んだ新しいCSS3 Fonts Moduleの草案が公開されました。
Web FontsのサポートはSafari 3.1, Chrome 1.0, Firefox 3.5, Opera 10から始まっています。フォントのライセンス、日本語フォントなど容量の大きなフォントと帯域など、未解決の問題もありますが、とても有用な技術であるように感じています。
WCAG 2.0の公認翻訳版
6月26日に、WCAG 2.0のフランス語版公認翻訳が公開されました。
W3C公認翻訳(Authorized W3C Translations)とはその名前のとおり、一連のプロセスを経ることにより、W3Cがその質を認めた翻訳を表します。基本的に翻訳は非公認なものなのですが、公的な文書などでW3Cの仕様を利用する際に困るといった意見があったようで、このような仕組みが作られています。
WCAG 2.0は国際協調を経て作られたガイドラインです。現在、世界各国でWCAG 2.0を取り入れた新しい国別ガイドライン策定への動きがスタートしています。今回のフランス語版についても、その動きのひとつのようです。
W3Cのアナウンスでは、今後も日本語を含めた十数言語で公認翻訳を公開することが示唆されています。日本語については、JISの改正に当たっている部会が翻訳した日本語訳がベースとなるようです。
CSS3 Multi-column layoutが最終草案に
6月30日に、CSS3 Multi-column layoutの最終草案が公開されました。column-breakなどカラム分割に関するプロパティが仕様から分離されるなど、多少の変更があります。
