| この記事の要点 |
|
direction プロパティとは
direction は CSS のプロパティで、テキストや行内ボックスの進行方向を指定します。日本語や英語のように左から右へ読む言語(LTR: Left-To-Right)と、アラビア語・ヘブライ語のように右から左へ読む言語(RTL: Right-To-Left)を切り替える際に使用します。直接的にはテキストの並びだけでなく、テーブルの列順、リストマーカーの位置、Flexbox / Grid の主軸方向にも影響を与えます。
構文
selector {
direction: ltr; /* 初期値:左から右 */
direction: rtl; /* 右から左 */
}
値の一覧
| 値 | 意味 |
|---|---|
ltr | 左から右(既定値) |
rtl | 右から左 |
inherit | 親要素の値を継承 |
使用例
1. テキストを RTL にする
<p style="direction: rtl;">ABC アラビア語の方向はこちらの向きです</p>このように指定すると、行ボックスの開始位置が右端になり、テキストは右詰めで描画されます。
2. テーブルの列順を反転
table.rtl {
direction: rtl;
}テーブルに direction: rtl を指定すると、<th> / <td> の並びが視覚的に右→左になります。RTL ロケール対応サイトでよく使われます。
3. リストマーカーの位置
RTL を指定すると、<ul> / <ol> のマーカーが右側に表示されます。
unicode-bidi との関係
direction プロパティの効果を確実に出すには、Unicode 双方向アルゴリズム(BiDi)を意識した unicode-bidi プロパティを併用するのが基本です。両者は必ずセットで考えられます。
| 値 | 意味 |
|---|---|
normal | 通常(既定値)。direction による方向制御は限定的 |
embed | 新しい埋め込みレベルを開く |
isolate | BiDi 計算を周囲から分離する(モダン UI で推奨) |
bidi-override | BiDi アルゴリズムを無視して direction をそのまま適用 |
HTML の dir 属性との違い
HTML 側にも書字方向を示す dir 属性があり、こちらは「文書構造としての方向」を表します。一方 direction は「スタイル上の方向」を指定します。基本的には HTML の dir 属性を優先し、direction はあくまでスタイル調整時の上書きとして使うのが推奨される使い分けです。
<!-- 推奨:意味としての方向は HTML 属性で -->
<p dir="rtl">مرحبا بالعالم</p>
装飾目的では使わない方がいい
「テキストを右揃えにしたい」「Flex の並びを反転したい」だけが目的なら、direction ではなく次のプロパティを使う方が意図が明確です。
- 右揃え →
text-align: right; - 縦書き・横書き切替 →
writing-mode: vertical-rl; - Flexbox の並び反転 →
flex-direction: row-reverse;
関連記事
子ページ
子ページはありません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスのソフト一覧|Blender・Metasequoiaと用途別の選び方
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- Visual Studio「デザイナーを表示できません」エラーの原因と対処 2026-10-28 12:06:00
- SSH 認証に失敗しました。再試行してください の対処 2026-10-28 12:06:00
- SSH2 秘密鍵の読み込みに失敗しました の原因と対処 2026-10-28 12:06:00
- TeraTerm のよくあるエラーと対処法完全ガイド — Connection refused / 2026-10-28 12:06:00
- Visual Studio エラー一覧|コンパイルエラー・警告の確認方法と対処 2026-10-28 11:39:57
- Whitelabel Error Page の原因と消し方|Spring Boot のエラーページ 2026-10-28 11:39:57
- Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法 2026-10-28 11:39:57
- SQL WHERE 句完全ガイド 2026-10-28 11:39:57
- SQL JOIN 完全ガイド (INNER/LEFT/RIGHT/FULL OUTER) 2026-10-28 11:39:57
- tomcat の起動 / 停止ログと catalina.log・catalina.out の違い 2026-10-28 10:24:23
- Tomcat の起動確認方法 5 つ|localhost:8080・ポート・プロセス・ログ 2026-10-28 10:24:23
- Oracle 19c COMMITの使い方: 暗黙コミット・自動確定・応答不明時の確認 2026-10-28 09:59:09
- Oracle 19c DELETE文|削除対象の確認・COMMIT前の判断・ROLLBACKの条件 2026-10-28 09:59:09
- Oracle 19c INSERT文|INSERT ALL・SELECT・RETURNINGとMERGEの使い分け 2026-10-28 09:59:09
- Oracle 19cのトランザクション制御|COMMIT・ROLLBACK・分離レベルと接続設定 2026-10-28 09:59:09