HTML
この記事では、文章を左から右(ltr)または右から左(rtl)へ表示する方向を指定するHTMLのdir属性について説明します。リストの旧要素である<dir>とは別の機能です。
この記事でわかること
dirが文章の書字方向を指定するグローバル属性であることltr・rtl・autoの使い分け- 言語情報は
langで指定し、見た目の配置はCSSと分ける考え方
HyperText Markup Language dir attribute.
dir 属性
dir属性は、テキストの書字方向を設定するための属性です。
html要素に dir属性を指定すると、文書全体の書字方向を示すことができます。
属性値に ltr または rtl という文字列を指定することで、テキストの基本方向を左から右もしくは右から左に設定することができます。
<p dir="ltr">書字方向を指定します。<p>
- ltr
- 「左から右へ」を指定します。
- rtl
- 「右から左へ」を指定します。
- auto
- 書字方向が不明。
- 左から右へ
- 日本語や英語などの場合は、左から右へ記述するので ltr を指定します。
- 右から左へ
- アラビア語やヘブライ語などの場合は、右から左へ記述するので rtl を指定します。
1つの文書内に複数の言語が含まれる場合は、この属性でそれぞれの書字方向を示すことができます。
<p>アラビア語で「こんにちは」は、「<span lang="ar" dir="rtl">أهلا</span>」と書くようです。</p>
アラビア語で「こんにちは」は、「أهلا」と書くようです。
autoについて
値に auto を指定すると、書字方向が自動的に判断されることになります。しかし、厳密に判断している訳ではないので、誤った解釈になってします場合もあるようです。
そのため、この値は最後の手段としてのみ使用することが推奨されています。
特殊なケース
基本的には dir属性は既定値を持ちませんが、dbi要素に対してこの属性を指定する場合には、既定値が auto になります。
また、bdo要素では dir属性の指定が必須となり、値に auto を指定することはできません。
指定できる要素
dir属性はグローバル属性のため、全ての HTML要素に指定することができます。
※ただし、属性と要素の組み合わせによっては効果がない場合もあります。