word-wrapプロパティの説明
CSSのword-wrap
プロパティは、インライン要素に対して単語の途中で改行処理を行うかどうかを指定します。例えば、長い単語などのテキストが行ボックスから溢れそうな時に、ブラウザーが自動的に折り返すのか、そのままコンテンツ・エリアを貫通させて表示するかを選択できます。
本プロパティの機能は、overflow-wrap
に引き継がれました。当初、Internet Explorerが独自に採用した後、多くのブラウザも実装しましたが、現在は改名されてoverflow-wrap
に置き換わった事になっています。
word-wrapに指定できる値
normal
- 通常の改行規則に則って折り返しを行います。テキストがコンテンツ・エリアから触れる場合、空白で区切られた単語の間で改行し、連続するテキストはそのまま折り返さずに表示します。これが初期値です。
anywhere
- 通常は折り返しが発生しない箇所であっても、要素からテキストが溢れることを防ぐために自動的に改行を行うことがあります。長い単語やURLが改行される場合、ハイフンは挿入されません。コンテンツの最小固有寸法を計算する祭には、単語の分割によって導入された折り返し可能位置を考慮します。
break-word
- 通常は折り返しが発生しない箇所であっても、要素からテキストが溢れることを防ぐために自動的に改行を行うことがあります。ただし、コンテンツの最小固有寸法を計算する祭には、単語の分割によって導入された折り返し可能位置を考慮しません。
word-wrapの使い方とサンプルコード
word-wrap
プロパティの構文は以下の通りです。
/* キーワード値 */
word-wrap: normal;
word-wrap: anywhere;
word-wrap: break-word;
/* グローバル値 */
word-wrap: inherit;
word-wrap: initial;
word-wrap: revert;
word-wrap: unset;
word-wrapの実例
それでは実際にword-wrap
プロパティの書き方を見ていきましょう。本来、この機能はoverflow-wrap
に引き継がれているため、実際に使用する場合はoverflow-wrap
を採用して下さい。
<div class="samp_box">
<section>
<h1>word-spacing: normal;</h1>
<p>Text text text text. <span id="ww_1">KonoNagaiTangohaTekitounaMojiretsudesu</span>. Text text text text.</p>
</section>
<section>
<h1>word-spacing: anywhere;</h1>
<p>Text text text text. <span id="ww_2">KonoNagaiTangohaTekitounaMojiretsudesu</span>. Text text text text.</p>
</section>
<section>
<h1>word-spacing: break-word;</h1>
<p>Text text text text. <span id="ww_3">KonoNagaiTangohaTekitounaMojiretsudesu</span>. Text text text text.</p>
</section>
</div>
.samp_box {
overflow: auto;
padding: 0 1rem 1rem;
background-color: #eee;
}
.samp_box > section {
overflow: auto;
margin: 1rem 0 0;
padding: 0 1rem 1rem;
background-color: #fff;
}
section > h1 {
margin: 1rem 0 0;
font-size: 1rem;
}
section > p {
width: 200px;
margin: .5rem 0 0;
border: 1px solid #999;
}
#ww_1 {
word-wrap: normal;
}
#ww_2 {
word-wrap: anywhere;
}
#ww_3 {
word-wrap: break-word;
}