We have emailed the verification/download link to "".
Login to your email and click the link to download the file directly.
Check your bulk/spam folders if you can't find our mail.
2015年1月25日に開催された「HTML5 Conference」での講演「Web Componentsのアクセシビリティ」で使用した資料です。
2015年1月25日に開催された「HTML5 Conference」での講演「Web Componentsのアクセシビリティ」で使用した資料です。
Views
Actions
Embeds 0
Report content
もしコンポーネントのアクセシビリティが高ければ
コンポーネントを使うだけで一定のアクセシビリティを確保します
一度良いものを作ってしまえば、コンポーネント利用時に頑張る必要がありません。
これはWeb Componentsに特化した内容というよりは、一般的なアクセシビリティの内容です。
Web Componentsで特に重要なのは、セマンティクスの指定方法です。Web Componentsを使う場合には、自分で作ったコンポーネントのセマンティクス、意味をユーザーにどうやって届ける方法を押さえておく必要があります。
これから3つプログレスバーを見ていきます。1つはHTML5のprogress要素をそのまま使った場合、2つ目はPolymerのpaper-progressというコンポーネントを使った場合、3つ目はGaia Componentsのgaia-progressというコンポーネントを使った場合です。
この違いは、どこにあるのでしょう?
そして、どうすれば、良い例のように、Webb Componentsでもセマンティクスを伝えることができるでしょうか。
Custom ElementsとShadow DOMです
既存要素を拡張した場合には、拡張した要素は、拡張元である既存の要素からセマンティクスを継承します。
要素を自分で独自に定義する場合には、基本的にはShadow DOMを使うことになるでしょう。
ではそれぞれを見ていきましょう。
メモ:Custom Elementsの仕様にはCustom Elementsに直接WAI-ARIAを指定する方法が載っている
基本的に、と言っているのは、自分で拡張した要素のセマンティクスが拡張元のセマンティクスからかけ離れている場合には、セマンティクスを変更する必要があると思いますが、そういう場合は、ふつう拡張という方法をとらないでしょう。
ともあれ、button要素を拡張すると、button要素のセマンティクスが引き継がれます。なので、ボタンとして使っていれば、セマンティクスの問題は起きません。
Developer Toolsのフロントエンド部分はHTMLとCSSとJavaScriptで書かれていますが、ここでは既存の要素を拡張したコンポーネントも使われています。
たとえば、テキストを含むボタンは<button is=“text-button”>、とbutton要素を拡張したものが使われています。
この要素のボタンとしてのセマンティクスは、支援技術に伝わっています。
独自要素を定義する場合、ほとんどの場合はShadow DOMを使うと思います。
HTMLにはvideo要素しか記述されていなくても、ブラウザーは再生ボタンや時間のスライダーなどのUI部品や、キャプションを表示するための領域などを用意しなくてはなりません。ChromeやSafariではこれらはShadow DOMとして実装されています。
HTMLにはvideo要素しか記述されていなくても、ブラウザーは再生ボタンや時間のスライダーなどのUI部品や、キャプションを表示するための領域などを用意しなくてはなりません。ChromeやSafariではこれらはShadow DOMとして実装されています。
プログレスバーの例で、実際にprogress要素を使うことはないと思いますが、例えば、見出しであったりリストであるならば、全部divとspanだけではなく、見出しやリストの要素を使う、という意味です。
その場合は、WAI-ARIAを使ってセマンティクスを補うことを考えてみましょう