CSSを使用してリストアイテムの改行を防ぐ方法


513

タグを使用してメニューに[ 履歴書送信 ] というリンクを配置しようとしていますli。2つの単語の間に空白があるため、2行に折り返されます。CSSでこの折り返しを防ぐ方法は?

回答:


969

white-space: nowrap;[1] [2]を使用するか、liの幅をより大きな値に設定して、リンクのスペースを増やします。


[1] §3.空白と折り返し:空白のプロパティ-W3 CSSテキストモジュールレベル3
[2] 空白-CSS:カスケードスタイルシート| MDN


41
あなたはその恐ろしくてしばしば正しくないw3schoolsウェブサイトの代わりにW3Cを参照するべきです。w3.org/TR/css3-text/#white-space0
セバスチャンマーティン

53
それとも、Mozillaの開発者向けのネットワーク参照developer.mozilla.org/en-US/docs/CSS/CSS_Reference
クリスEsplin

4
を使用してliアイテムの改行を防止しましたdisplay: inline;。多分これは同様の問題を持つ他の人を助けるでしょう。

表示に注意することは重要です。副作用がある可能性があるため、インラインにします。空白:nowrap; 効果は1つだけです。
Crispen Smith、2015

この場合、テキストのオーバーフローが発生します。それを防ぐ方法は?

147

コンテンツが1行に収まるように大きすぎる場合は、次の小さなコードスニペットを追加して、行の末尾に「…」を追加できます。

li {
  overflow: hidden; 
  text-overflow: ellipsis;
  white-space: nowrap;
}

テキストクランプソリューションを探していましたが、このソリューションに固執します
JorgeGarza '27

33

これを選択的に(つまり、その特定のリンクに対してのみ)達成したい場合は、通常のスペースの代わりに改行しないスペースを使用できます。

<li>submit&nbsp;resume</li>

https://en.wikipedia.org/wiki/Non-breaking_space#Encodings

編集:これはHTMLであり、OPによって要求されたCSSではないことを理解していますが、一部の人はそれが役立つと思うかもしれません…


14

表示:インラインブロック; リストアイテムの単語間の区切りを防ぎます

 li {
    display: inline-block;
 }

1
jsfiddleをクリックして出力の幅を調整すると、個々のリストアイテムが「リスト」という単語と数値の間で
区切られ

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.