tabindex属性
tabindex属性は、要素のタブインデックスを指定するグローバル属性。
| ブラウザ対応 | ![]() ![]() ![]() ![]() ![]() |
|---|
構文
<element tabindex="整数">
- 正の整数
- タブによる移動順序を示す。
- タブ移動時、指定した数値の順にフォーカスする。クリックによるフォーカスもできる。
- 負の整数
- タブ移動時にフォーカスしない。クリックによるフォーカスはできる。
- 0
- タブ移動時、ドキュメントにおける相対的な順番でフォーカスする。クリックによるフォーカスもできる。
要点
- 要素のタブインデックスを指定する。
- 全てのHTML要素で使用できるグローバル属性である。
- 下記の表の通り、tabindex属性の指定によるフォーカス可否は、タブ移動時かクリック時か、フォーカス可能な要素かフォーカス不可の要素かなどの条件により異なる。
| tabindex | フォーカス可能な要素 (※1) | フォーカス不可の要素 (※2) | ||
|---|---|---|---|---|
| タブ | クリック | タブ | クリック | |
| 正の整数 | ○ 指定した数値の順番 |
○ | ○ 指定した数値の順番 |
○ |
| 負の整数 | × | ○ | × | ○ |
| 0 | ○ ドキュメントにおける相対的な順番 |
○ | ○ ドキュメントにおける相対的な順番 |
○ |
| 指定なし | ○ ドキュメントにおける相対的な順番 |
○ | × | × |
※1:「フォーカス可能な要素」とは、a要素やフォーム部品など、元々フォーカスできる要素のこと。
※2:「フォーカス不可の要素」とは、p要素やspan要素など、元々フォーカスできない要素のこと。
サンプルコード
正の整数
<input type="text" tabindex="1"> <span tabindex="3"></span>
負の整数
<input type="text" tabindex="-1"> <span tabindex="-3"></span>
0
<input type="text" tabindex="0"> <span tabindex="0"></span>
サンプル
HTMLソースコード
<style scoped="scoped">
input {
width: 15%;
border: 1px solid red;
text-align: center;
}
input:focus {
background-color: yellow;
}
span {
display: inline-block;
width: 15%;
border: 1px solid blue;
text-align: center;
}
span:focus {
background-color: yellow;
}
</style>
<p>input要素</p>
<p>
<input type="text" tabindex="1" value="1">
<input type="text" tabindex="-1" value="-1">
<input type="text" tabindex="0" value="0">
<input type="text" value="指定なし">
</p>
<p>
<input type="text" tabindex="2" value="2">
<input type="text" tabindex="-2" value="-2">
<input type="text" tabindex="0" value="0">
<input type="text" value="指定なし">
</p>
<p>
<input type="text" tabindex="3" value="3">
<input type="text" tabindex="-3" value="-3">
<input type="text" tabindex="0" value="0">
<input type="text" value="指定なし">
</p>
<p>
<input type="text" tabindex="4" value="4">
<input type="text" tabindex="-4" value="-4">
<input type="text" tabindex="0" value="0">
<input type="text" value="指定なし">
</p>
<p>
<input type="text" tabindex="5" value="5">
<input type="text" tabindex="-5" value="-5">
<input type="text" tabindex="0" value="0">
<input type="text" value="指定なし">
</p>
<p>span要素</p>
<p>
<span tabindex="6">6</span>
<span tabindex="-6">-6</span>
<span tabindex="0">0</span>
<span>指定なし</span>
</p>
<p>
<span tabindex="7">7</span>
<span tabindex="-7">-7</span>
<span tabindex="0">0</span>
<span>指定なし</span>
</p>
<p>
<span tabindex="8">8</span>
<span tabindex="-8">-8</span>
<span tabindex="0">0</span>
<span>指定なし</span>
</p>
<p>
<span tabindex="9">9</span>
<span tabindex="-9">-9</span>
<span tabindex="0">0</span>
<span>指定なし</span>
</p>
<p>
<span tabindex="10">10</span>
<span tabindex="-10">-10</span>
<span tabindex="0">0</span>
<span>指定なし</span>
</p>
実際の表示
input要素
span要素
6 -6 0 指定なし
7 -7 0 指定なし
8 -8 0 指定なし
9 -9 0 指定なし
10 -10 0 指定なし




