overflow-wrapとは?使い方やword-breakとの違いを解説

長い単語の途中で改行させるかどうかを指定するoverflow-wrap

あまり見かけないプロパティなので、詳しい意味や使い方を知らない人も多いでしょう。

・overflow-wrapってどんなプロパティ?
・どうやって使えばいいかわからない。
・word-breakとの違いは?

こんな疑問を持っていませんか?

今回は、overflow-wrapの

・基本的な使い方
・word-breakとの違い
・overflow-wrapで様々な値を使い分ける方法

について説明します。

overflow-wrapとは

overflow-wrapとはどういったプロパティなのか、詳しく知らない人も多いでしょう。

なのでここでは、overflow-wrapの意味や役割について解説していきます。

overflow-wrapの読み方

overflow-wrapは「オーバーフロー・ラップ」と読みます。

「overflow」は「あふれ出る・はみ出す」という意味があり、「wrap」は「包む・たたむ」という意味があります。

CSSではoverflowを単語の途中で改行させるという意味で使われています。

例えば、単語ごとに改行させたり、単語の途中で改行させたり、様々な調整をすることが可能です。

overflow-wrapは長い単語の途中で改行させるかどうかを指定するプロパティ

overflow-wrapは長い単語の途中で改行させるかどうかを指定するプロパティです。

overflow-wrapを指定することで、単語の改行位置を調整することができます。

例えば、normalという値を指定すれば、単語ごとに改行されるのですが、break-wordという値を指定すると、要素の幅に合わせて単語の途中で改行されるようになります。

MEMO
overflow-wrapはもともと「word-wrap」というMicrosoftの拡張機能でした。
しかし現在は、「overflow-wrap」に改名されて「word-wrap」は別名になっています。

overflow-wrapで利用できる値

overflow-wrapでは以下の値を使うことができます。

説明
normal 通常の単語の分割位置 (2つの単語の間の空白など) でのみ改行することを示します。
anywhere あふれることを避けるために、行内にその他の分割可能な位置がない場合、その他の分割できない文字列 — 長い単語や URL — が任意の場所で分割されることがあります。分割位置にハイフン文字は挿入されません。コンテンツの最小固有寸法を計算する時には、単語分割によって導入された折り返し可能位置が考慮されます。
break-word anywhereの値と同様に、行内にその他の分割可能な位置がない場合、通常は分割可能でない単語が任意の場所で分割されますが、コンテンツの最小固有寸法を計算する時に、単語分割によって導入された折り返し可能位置が考慮されません。

対応ブラウザ

対応ブラウザは以下の通りです。

PC用ブラウザ 対応状況
Chrome 完全対応
Edge 完全対応
Firefox 完全対応
Internet Explorer 完全対応
Opera 完全対応
Safari 完全対応
スマートフォン用ブラウザ 対応状況
Android webview 完全対応
Android版Chrome 完全対応
Android版Firefox 完全対応
Android 版 Opera 完全対応
iOS版Safari 完全対応
Samsung Internet 完全対応

overflow-wrapの基本的な使い方

overflow-wrapの意味や役割がわかりました。

なのでここでは、実際にoverflow-wrapの使い方について解説していきます。

まだ使い方を知らない人は、しっかりと理解していきましょう。

overflow-wrapの使い方

overflow-wrapの使い方をコードを用いて見ていきます。

実際のコードは次の通り。

幅が50pxのpタグがあったとします。

このpタグに「overflow-wrap: normal;」と指定してみましょう。

結果を表示すると、次のようになります。

※見やすいように背景色をつけています。

pタグの文章は単語ごとに改行されていますね。

今回は、値を「normal」と指定しましたが、他にも「anywhere」や「break-word」などの値があります。(これらの値の使い方は後ほど解説します)

このようにoverflow-wrapは単語の改行位置を調整することができるので、使い方を覚えておきましょう。

overflow-wrapとword-breakの違い

overflow-wrapとよく似たプロパティでword-breakというものがあります。

これらの違いをあまり理解していない人もいるでしょう。

なのでここでは、overflow-wrapとword-breakの違いを明確にしていきます。

  • ・overflow-wrap:表示範囲に収まらない長い単語を途中で改行させるかどうかを指定する
  • ・word-break:表示範囲の最後に来たとき、単語が長くても短くても、途中で改行させるかどうか指定する

word-breakは単語の長さが長かったとしても短かったとしても、途中で改行させることができます。

実際にコードで使い方を見ていきましょう。

word-breakには「normal」「break-all」「keep-all」の3つの値があります。

normalはデフォルトと同じように表示されて、break-allは単語の途中で自動改行されます。

そして、keep-allはスペースやハイフン、句読点などの決められた場所でしか改行されません。

結果を表示して、それぞれの値を見比べてみましょう。

normalとkeep-allが同じように表示されて、break-allでは単語の途中で改行されているのがわかりますね。

このような形で、word-breakを使うことができるので、使い方を覚えておくといいでしょう。

overflow-wrapで様々な値を使い分ける方法

ここまでで、overflow-wrapの基本的な使い方がわかりました。

なのでここからは、overflow-wrapで様々な値を使い分ける方法を解説していきます。

overflow-wrapには、「normal」「anywhere」「break-word」の3つの値があり、中でもnormalとbreak-wordがよく使われます。

ここでは実際に、normalとbreak-wordの指定方法をコードで見ていきましょう。

normalはデフォルトと同じように表示されますが、break-wordは、単語の途中でも改行されます。

結果を表示すると次のようになるでしょう。

normalは単語ごとに改行されていますが、break-wordは単語の途中で改行されていますね。

このようにoverflow-wrapは、様々な値を使用して単語の改行位置を調整することができます。

それぞれの値の使い方を覚えておくといいでしょう。

まとめ

今回は、overflow-wrapの意味や使い方について詳しく解説しました。

overflow-wrapは長い単語の途中で改行させるかどうかを指定するプロパティです。 

overflow-wrapを指定することで、単語を改行させる位置を調整することができます。

なので、使い方を覚えておくといいでしょう。

この記事がoverflow-wrapの学習に役立つと幸いです。

参考文献:MDN web docs|overflow-wrap – CSS:カスケーディングスタイルシート

BLOGコンテンツをパーソナライズします

あなたは現在「プログラミング学習者」ですか?