テキストの書字方向を指定するプロパティです。横書き、縦書き、文字の向きを制御できます。日本語、中国語、アラビア語などの多言語対応や、デザイン上の縦書き表現に使用されます。
writing-mode: horizontal-tb | vertical-rl | vertical-lr | sideways-rl | sideways-lr
.vertical-text {
writing-mode: vertical-rl;
height: 200px;
width: 100px;
}
縦書き(右から左)- 日本語の伝統的な書字方向
.vertical-left {
writing-mode: vertical-lr;
height: 200px;
width: 100px;
}
縦書き(左から右)- モンゴル語などで使用
.horizontal {
writing-mode: horizontal-tb;
}
横書き(上から下)- デフォルトの書字方向
.sidebar-title {
writing-mode: vertical-rl;
text-orientation: mixed;
padding: 1rem;
background: #f3f4f6;
}
サイドバーに縦書きのタイトルを配置したレイアウト例です。 Webデザインでのアクセントとして効果的に使用できます。
サイドバーの縦書きタイトル
.book-spine {
writing-mode: vertical-rl;
text-orientation: sideways;
height: 300px;
width: 40px;
background: #1f2937;
color: white;
display: flex;
align-items: center;
justify-content: center;
}
本の背表紙のような縦書きデザイン
縦書き時は要素の幅と高さの概念が入れ替わる。text-orientationと組み合わせて文字の向きも制御できる。日本語の縦書きレイアウトやデザイン上のアクセントとして活用。
縦書き時にpaddingやmarginの方向が変わることを忘れがち。flexboxやgridとの組み合わせ時は軸の方向に注意。
Chrome 48+, Firefox 41+, Safari 5.1+