テキストにスペースがなく、divサイズが200px を超えると、幅が200pxと定義されます。ここにコードを配置しました。http ://jsfiddle.net/madhu131313/UJ6zG/ 以下の画像を 編集して確認できます。次の行に移動するテキスト
10 に答える
これは、スペースのない長い単語が1つあるためです。プロパティを使用してword-wrap
、テキストを分割することができます。
#w74 { word-wrap: break-word; }
かなり良いブラウザサポートもあります。こちらのドキュメントをご覧ください。
使用する
white-space: pre-line;
テキストがから流出するのを防ぎますdiv
。の終わりに達すると、テキストが壊れますdiv
。
overflow:hidden;
またはを使用する必要がありますscroll
またはphpを使用すると、長い単語を短くすることができます...
次のCSSプロパティをコンテナブロック(div)に適用する必要があります。
overflow-wrap: break-word;
仕様によると(ソースCSS | MDN):
CSSプロパティは
overflow-wrap
、テキストがコンテンツボックスからオーバーフローするのを防ぐために、ブラウザが単語内に改行を挿入するかどうかを指定します。
値をに設定してbreak-word
オーバーフローを防ぐために、行に他の方法で許容できるブレークポイントがない場合、通常はブレークできない単語が任意のポイントでブレークされることがあります。
言及する価値があります...
このプロパティは元々、と呼ばれる非標準で接頭辞のないMicrosoft拡張機能
word-wrap
であり、同じ名前のほとんどのブラウザで実装されていました。その後、エイリアスとしてoverflow-wrap
、に名前が変更されました。word-wrap
従来のブラウザのサポートに関心がある場合は、次の両方を指定する価値があります。
word-wrap : break-word;
overflow-wrap: break-word;
元。IE9は認識しませんoverflow-wrap
が、正常に動作しますword-wrap
これを使用すると、 :)overflow:auto
内のテキストにスクローラーが表示されます。div
これが役立つ場合。次のプロパティと値をセレクターに追加します。
white-space: pre-wrap;
これは私のためのトリックをしました:
{word-break: break-all; }
私は最近これに遭遇しました。私が使用した:display:block;
2行または3行に折り返す必要があるのが1つのインスタンスだけの場合は<wbr>
、文字列で数行を使用します。それらを同じように扱います<br>
が、必要がなければ改行は挿入されません。
<div id="w74" class="dpinfo">
adsfadsadsads<wbr>fadsadsadsfadsadsa<wbr>dsfadsadsadsfadsadsads<wbr>fadsadsadsfadsadsadsfa<wbr>dsadsadsfadsadsadsfadsad<wbr>sadsfadsadsads<wbr>fadsadsadsfadsads adsfadsads
</div>
これがフィドルです。