やわらかしかっけい

なんでもすぐに忘れてしまう自分のために

単語の途中で改行されなくてレイアウトが崩れる時

単語じゃなくても、クライアント様がブログ本文に入力した装飾
「●○●○●○●○●○●○●○●○●○●○●○●○●○●○」
みたいなやつで崩れたりする。
(そういう装飾を自分では使わないから、予測できなかった)

単語の途中でも改行されるようにCSSを書き加えるんだけど、
いつも混乱する

「white-space」と「word-break」と「overflow-wrap」と「word-wrap」

どれがなに?????

white-space

ホワイトスペース=連続する半角スペースやタブ

ソースの中のホワイトスペースや改行を、
無視するかそのまま表示するか、などを制御できる
white-space-スタイルシートリファレンス

word-break

禁則処理に基づいて「、」や「。」でしか改行しないようにしたりできるし、
逆におかまいなく単語の途中で改行するようにもできる

word-break-スタイルシートリファレンス

overflow-wrap

word-wrap = overflow-wrap に改名されたということので、両者は同じ。

「表示範囲内に収まりきらない単語がある場合に、単語の途中で改行するかどうか」
を制御したい場合、基本的にはこれを使えばいいっぽい。

(表示範囲内に収まっている分には、基本的に英単語の途中では改行したりしないので、そこまで読みづらくはならない。supercalifragilisticexpialidociousみたいな単語が出てきた場合のためのプロパティっぽい)

word-wrap-スタイルシートリファレンス

今回はoverflow-wrap:break-word; を採用

これ、基本的にはデフォルトで設定しておいた方が良い気がするな

参考

creive.me