
日本人なら縦書き! なんてことは全く思ってはいないのですが、web上での縦書きの大変さは大分改善されてきています。デザイン的な意味合いが大きいとは思いますが、日本語と縦書きの「見慣れてる度」は、欧文系デザインにはない独特な印象を与えてくれます。
そしてCSS3で簡単に縦書きが実装できちゃうんですね。というか、ちゃんと調べたことがなかったので、正直、今まで知りませんでした。。。いやはやすごい時代だ。
参考にさせていただいたサイト

ここに

「縦書き実装コーディング解説」とあり、思わず見ちゃったわけなんです。というわけで、いざ実践!
ページ全体を縦書きモードに!
文字の進行方向や向きを定義する「writing-mode」を使います。縦書きにするには
writing-mode: vertical-rl;
とします。writing-modeの値ですが
- horizontal-tb : 横書き
- vertical-rl : 縦書き
となっています。ま、実際に実装する際にはベンダープレフィックスもつけて、さらにIEは独自のモノが必要になりますので注意が必要。
body {
-webkit-writing-mode: vertical-rl;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
}
こんな感じでページ全体を縦書きモードにすることができちゃいます。簡単でしょ?
実際にやってみよう
以下のコードを書いてみました。どんな感じで表示されるのでしょうか?
【css】
body {
-webkit-writing-mode: vertical-rl;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
}
ul {list-style-type: none;}
li {font-size: 26px;}
【html】
<ul>
<li>見出し(title)</li>
<li>本文1</li>
<li>春はあけぼの</li>
<li>夏は何?</li>
<li>秋は焼き芋</li>
<li>冬寒すぎて候</li>
<li>詠み人知らず</li>
<li>2017年3月某日</li>
</ul>

おぉ、バッチリ縦書き! …と言いたいですが、英数字が横になったままの状態なんですね。でもこれも修正方法があります。
全てを縦にする「text-orientation: upright;」
英数字を含めて一文字ずつ縦にするには
text-orientation: upright;
を指定してあげます。これだけ。結果をみてみると

今度はバッチリ縦書きになりましたね! また、特定の部分を横にしたい場合には
text-orientation: sideways-right;
とします。例えば、titleの部分は小説とかに書かれるような横のままがいいなぁ、となれば
【css】
.sideways{text-orientation: sideways-right;}
【html】
<span class="sideways">title</span>
こうすれば

こんな感じでtitleの部分だけ横になったりもできます。
まとめ
簡単ではありますが、ざっと縦書きcssを紹介してみました。詳しい解説などは記事内でも紹介したたてよこWebアワードさんを参照していただくと、きっと幸せになれるかと。
ちなみに、普段見ているサイトをデベロッパーツールで縦書きに強制的に変更してみたりするのも面白いですよ

当サイトで試してみました(冒頭にも載せてます)。調整が必要でしょうが、意外にいい感じかも? さて、最後にいつもどおりコードを載せておきますので、試してみてくださいね。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>縦書き</title>
<link rel="stylesheet" href="">
<style>
body {
-webkit-writing-mode: vertical-rl;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
}
ul {list-style-type: none;}
li {font-size: 26px;
text-orientation: upright;
}
.sideways{text-orientation: sideways-right;}
</style>
</head>
<body>
<ul>
<li>見出し(<span class="sideways">title</span>)</li>
<li>本文1</li>
<li>春はあけぼの</li>
<li>夏は何?</li>
<li>秋は焼き芋</li>
<li>冬寒すぎて候</li>
<li>詠み人知らず</li>
<li>2017年3月某日</li>
</ul>
</body>
</html>