aboutsummaryrefslogtreecommitdiff
path: root/files/ja/web/html/global_attributes/tabindex
diff options
context:
space:
mode:
Diffstat (limited to 'files/ja/web/html/global_attributes/tabindex')
-rw-r--r--files/ja/web/html/global_attributes/tabindex/index.html94
1 files changed, 94 insertions, 0 deletions
diff --git a/files/ja/web/html/global_attributes/tabindex/index.html b/files/ja/web/html/global_attributes/tabindex/index.html
new file mode 100644
index 0000000000..9794aaf13b
--- /dev/null
+++ b/files/ja/web/html/global_attributes/tabindex/index.html
@@ -0,0 +1,94 @@
+---
+title: tabindex
+slug: Web/HTML/Global_attributes/tabindex
+tags:
+ - HTML
+ - Reference
+ - グローバル属性
+ - リファレンス
+translation_of: Web/HTML/Global_attributes/tabindex
+---
+<div>{{HTMLSidebar("Global_attributes")}}</div>
+
+<p><span class="seoSummary"><strong><code>tabindex</code></strong> <a href="/ja/docs/Web/HTML/Global_attributes">グローバル属性</a>は、要素が入力フォーカスを持てることと、キーボードの順次ナビゲーション (ふつうは名前の由来である <kbd>Tab</kbd> キーによる) に加わるかどうか、どの位置に加わるかを示します。</span></p>
+
+<div>{{EmbedInteractiveExample("pages/tabbed/attribute-tabindex.html","tabbed-standard")}}</div>
+
+<div class="hidden">このデモのソースファイルは GitHub リポジトリに格納されています。デモプロジェクトに協力したい場合は、 <a href="https://github.com/mdn/interactive-examples">https://github.com/mdn/interactive-examples</a> をクローンしてプルリクエストを送信してください。</div>
+
+<p>値としては整数値を受け付け、値によって次のような様々な結果になります。</p>
+
+<ul>
+ <li><em>負の数</em> (ふつう <code>tabindex="-1"</code>) は、その要素がキーボードの順次ナビゲーションでは到達できませんが、 JavaScript や視覚的にフォーカスを持つことができるという意味です。これは主に、 JavaScript で操作可能なウィジェットを作成するのに有用です。
+
+ <div class="note">
+ <p>負の値はオフスクリーンのコンテンツで特定のイベントにより現れる場合に有用です。ユーザーは負の <code>tabindex</code> が付いた要素に、キーボードを使用してフォーカスを与えることはできませんが、スクリプトは <code>focus()</code> <a href="/ja/docs/Web/API/HTMLElement/focus">メソッド</a>を呼び出すことでフォーカスを与えることはできます。</p>
+ </div>
+ </li>
+ <li><code>tabindex="0"</code> は、要素がキーボードの順次ナビゲーションでフォーカスを持つことが可能ですが、その順序は文書のソース内の順序で決定されることを表します。</li>
+ <li><em>正の数</em>は、要素がキーボードの順次ナビゲーションでフォーカスを持つことが可能であり、その順序は数値で定義されることを表します。つまり、 <code>tabindex="4"</code> は <code>tabindex="5"</code> よりも前にフォーカスが来ますが、 <code>tabindex="3"</code> よりも後だということです。複数の要素に同じ正の数の <code>tabindex</code> が指定された場合は、文書のソース内の互いの位置に従った順序になります。 <code>tabindex</code> の最大値は32767です。指定されなかった場合、既定値の0を取ります。
+ <div class="warning">
+ <p><code>tabindex</code> の値に0よりも大きな値を使用することは避けてください。そうすると、支援技術に頼っている人がページコンテンツを移動したり操作したりすることが難しくなります。代わりに、論理的な順序で要素を並べて文書を書いてください。</p>
+ </div>
+ </li>
+</ul>
+
+<p><code>tabindex</code> 属性を{{htmlelement("div")}} に設定する場合は、子のコンテンツにも <code>tabindex</code> を設定しなければ、矢印キーを使用して子のコンテンツをスクロールできなくなります。 <a href="https://jsfiddle.net/jainakshay/0b2q4Lgv/"><code>tabindex</code> のスクロール効果を理解するには、こちらの fiddle を確認してください</a>。</p>
+
+<h2 id="Accessibility_concerns" name="Accessibility_concerns">アクセシビリティの考慮事項</h2>
+
+<p>キーボード入力で対話的にフォーカスを設定できるようにするために、 <a href="/ja/docs/Web/Guide/HTML/Content_categories#Interactive_content">対話型コンテンツ</a>ではないものに <code>tabindex</code> 属性を組み合わせて使用することは避けてください。例えば、 {{HTMLElement("button")}} 要素を使用する代わりに {{HTMLElement("div")}} 要素を使用してボタンを記述する場合などです。</p>
+
+<p>対話的要素でないものを使用して対話的コンポーネントを記述すると、<a href="/ja/docs/Learn/Accessibility/What_is_accessibility#Accessibility_APIs">アクセシビリティツリー</a>に掲載されません。これは、支援技術によって移動や操作を行うことを阻害します。このようなコンテンツは、代わりに ({{HTMLElement("a")}}, {{HTMLElement("button")}}, {{HTMLElement("details")}}, {{HTMLElement("input")}}, {{HTMLElement("select")}}, {{HTMLElement("textarea")}}, などの) 対話型要素を使用して意味的に記述するべきです。これらの要素には、 <a href="/ja/docs/Web/Accessibility/ARIA">ARIA</a> によって管理しなければならないアクセシビリティにステータスを伝える、組み込みのロールと状態があります。</p>
+
+<ul>
+ <li><a href="https://developer.paciellogroup.com/blog/2014/08/using-the-tabindex-attribute/">Using the tabindex attribute | The Paciello Group</a></li>
+</ul>
+
+<h2 id="Specifications" name="Specifications">仕様書</h2>
+
+<table class="standard-table">
+ <thead>
+ <tr>
+ <th scope="col">仕様書</th>
+ <th scope="col">状態</th>
+ <th scope="col">備考</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>{{SpecName('HTML WHATWG', "interaction.html#attr-tabindex", "tabindex")}}</td>
+ <td>{{Spec2('HTML WHATWG')}}</td>
+ <td>最新のスナップショットである {{SpecName('HTML5.1')}} から変更なし。</td>
+ </tr>
+ <tr>
+ <td>{{SpecName('HTML5.1', "editing.html#attr-tabindex", "tabindex")}}</td>
+ <td>{{Spec2('HTML5.1')}}</td>
+ <td>{{SpecName('HTML WHATWG')}} のスナップショットであり、 {{SpecName('HTML5 W3C')}} から変更なし。</td>
+ </tr>
+ <tr>
+ <td>{{SpecName('HTML5 W3C', "editing.html#attr-tabindex", "tabindex")}}</td>
+ <td>{{Spec2('HTML5 W3C')}}</td>
+ <td>{{SpecName('HTML WHATWG')}} のスナップショット。 {{SpecName("HTML4.01")}} との違いは、すべての要素でこの属性に対応したこと (グローバル属性化)。</td>
+ </tr>
+ <tr>
+ <td>{{SpecName('HTML4.01', 'interact/forms.html#adef-tabindex', 'tabindex')}}</td>
+ <td>{{Spec2('HTML4.01')}}</td>
+ <td>{{HTMLElement("a")}}, {{HTMLElement("area")}}, {{HTMLElement("button")}}, {{HTMLElement("object")}}, {{HTMLElement("select")}}, {{HTMLElement("textarea")}} 要素でのみ対応。</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの互換性</h2>
+
+<p class="hidden">このページの互換性一覧表は構造化データから生成されています。データに協力していただけるのであれば、 <a class="external" href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> をチェックアウトしてプルリクエストを送信してください。</p>
+
+<p>{{Compat("html.global_attributes.tabindex")}}</p>
+
+<h2 id="See_also" name="See_also">関連情報</h2>
+
+<ul>
+ <li>すべての<a href="/ja/docs/Web/HTML/Global_attributes">グローバル属性</a>。</li>
+ <li>{{domxref("HTMLElement.tabIndex")}} は、この属性を反映します。</li>
+ <li>tabindex に関するアクセシビリティの問題について、 Adrian Roselli による <a href="http://adrianroselli.com/2014/11/dont-use-tabindex-greater-than-0.html">Don’t Use Tabindex Greater than 0</a> を参照。</li>
+</ul>