2017-06-28 2 views
1

このHTMLによってスクロールバーが表示されるのはなぜですか?最大幅にもかかわらず長いテキストのスクロールバーを表示するブラウザ

<div style="width: 200px; max-width: 200px; background-color: lightblue;"> 
 
verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_ 
 
</div>

私はそれは私が最大幅を指定していないはずだからだと思います。 のラッピングだけでなく、スクロールバーになると予想していたので、divの最終幅は200pxです。

私のウェブサイトでは、相対配置を使用して要素を含まないレンダリングウィジェットを実際に使用しているため、overflow: hidden;を使用することはできません。

どうすればそのテキストを含むことができますか、または少なくともスクロールバーが表示されないようにすることはできますか?そのテキストを親の外にレンダリングすることは許容されます。

+0

なぜ無視されますので、テキストの間にスペースがないので、 z-indexでウィジェットを後押ししますか? –

答えて

1

使用word-wrap: break-word;それは新しい行に中断されません、それはmax-width

<div style="width: 200px; max-width: 200px;word-wrap: break-word; background-color: lightblue;"> 
 
verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_ 
 
</div>

+0

それをそのまま維持する方法はありますか?私はまたなぜ*この現象が発生するのだろうかと思う。 – boot4life

+0

これは、デフォルトの単語の折り返しがスペースを壊すためです。空白がないので、テキストは壊れません。中断がなければ、ブラウザはスクロールバーを追加します。 – Allan

+0

文字の間に空白がない場合、HTMLは単一の単語として解釈し、新しい/次の行で改行しません。 –

0

<div style="width: 200px; max-width: 200px; background-color: lightblue;"> 
 
verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_ verylongtext_verylongtext_verylongtext_verylongtext_verylongtext_ 
 
</div>

+0

ブラウザはあなたのセンテンスを1つの単語と見なし、単語をカットしないで、自動的に生成します** margin-right **、スニペットの結果の変化はテキストにスペースを入れる**(単語間のスペース)**あなたは同じ結果を得るとブートストラップグリッドを使用してください – tnbsoftlab

+0

なぜ幅の設定が取れないのですか? – boot4life

+0

この場合、ここでの優先度は、あなたが** font-size **を減らさない限り、ブラウザが使用するデバイスの幅ですので、CSSのプロパティでこの問題も解決できます** word-wrap:break-word ** [word-break](https://developer.mozilla.org/fr/docs/Web/CSS/word-break)をご覧ください。 – tnbsoftlab

関連する問題