縦書き
テキストを上から下へ、行を右から左へ配置する書字方向。日本語・中国語・モンゴル語などで伝統的に使われ、CSS の writing-mode プロパティで実装する。
縦書き (vertical writing、縦組み) は、文字を上から下へ、行を右から左へ配置する書字方向です。日本語では新聞、小説、漫画、書道で縦書きが標準であり、横書きが普及した現在でも出版物の多くは縦書きで組まれています。中国語 (繁体字圏)、モンゴル語、古典韓国語でも縦書きが使われます。
ウェブで縦書きを実現するには CSS の writing-mode プロパティを使います。writing-mode: vertical-rl で右から左への縦書き (日本語標準)、writing-mode: vertical-lr で左から右への縦書き (モンゴル語) を指定できます。主要ブラウザはすべて対応しており、日本語のウェブ小説サイトや電子書籍ビューアで活用されています。
縦書きにおける文字の回転は複雑なルールに従います。漢字・ひらがな・カタカナはそのまま縦に並びますが、英数字や一部の記号は 90 度回転して表示されます。CSS の text-orientation プロパティで制御でき、mixed (デフォルト、文字種に応じて自動判定)、upright (すべて正立)、sideways (すべて横倒し) を選択できます。2 桁の数字を縦中横 (たてちゅうよこ) で表示するには text-combine-upright: all を使います。
文字数カウントと縦書きの関係は、1 行あたりの文字数設計に表れます。日本語の小説は 1 行 40〜43 文字が標準で、文庫本のページは 16〜17 行 × 40〜43 文字で構成されます。原稿用紙は 20 文字 × 20 行 = 400 文字が基本単位です。これらの文字数設計は縦書きの可読性を最適化するために長年の経験から導かれたものです。
縦書きでの約物の扱いには特有のルールがあります。句点「。」と読点「、」は文字枠の右上に配置されます。括弧類は 90 度回転し、「(」は上括弧、「)」は下括弧として機能します。長音記号「ー」は縦棒に変わり、ダッシュも縦方向に表示されます。これらの変換は Unicode の文字プロパティ (Vertical_Orientation) に基づいてフォントが自動的に処理します。
レスポンシブデザインでは、画面幅に応じて縦書きと横書きを切り替える設計が有効です。デスクトップでは縦書きで文学的な雰囲気を演出し、モバイルでは横書きに切り替えて可読性を確保する、といったアプローチです。ただし、縦書きと横書きでは最適な 1 行あたりの文字数が異なるため、単純な切り替えではなく行長の再設計が必要です。