So verhindern Sie Zeilenumbrüche in Listenelementen mithilfe von CSS


513

Ich versuche, einen Link mit dem Namen " Lebenslauf senden" mithilfe eines liTags in ein Menü einzufügen. Aufgrund des Leerzeichens zwischen den beiden Wörtern wird es in zwei Zeilen eingeschlossen. Wie kann dieser Umbruch mit CSS verhindert werden?

Antworten:


969

Verwenden Sie white-space: nowrap;[1] [2] oder geben Sie diesem Link mehr Platz, indem Sie die liBreite auf größere Werte einstellen .


[1] § 3. Leerraum und Umbruch: die Leerraum-Eigenschaft - W3 CSS-Textmodul Stufe 3
[2] Leerraum - CSS: Cascading Style Sheets | MDN


41
Sie sollten auf W3C anstatt auf diese gefürchtete und oft falsche Website von w3schools verweisen. w3.org/TR/css3-text/#white-space0
Sebastien Martin

53
Oder verweisen Sie einfach auf Mozilla Developers Network developer.mozilla.org/en-US/docs/CSS/CSS_Reference
Chris Esplin

4
Ich habe Zeilenumbrüche in Li-Artikeln mit verhindert display: inline;. Vielleicht hilft dies auch anderen bei ähnlichen Problemen.

Es ist wichtig, vorsichtig mit dem Display umzugehen: Inline, da es Nebenwirkungen haben kann. Leerraum: Nowrap; hat nur den einen Effekt.
Crispen Smith

In diesem Fall tritt ein Textüberlauf auf. wie kann man das verhindern?

147

Sie können diesen kleinen Codeausschnitt hinzufügen, um dem Ende der Zeile ein schönes "..." hinzuzufügen, wenn der Inhalt zu groß ist, um in eine Zeile zu passen:

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

Ich suchte nach einer
Textklemmlösung

33

Wenn Sie dies selektiv erreichen möchten (dh nur zu diesem bestimmten Link), können Sie anstelle eines normalen Leerzeichens ein nicht unterbrechendes Leerzeichen verwenden:

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

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

Bearbeiten: Ich verstehe, dass dies HTML ist, nicht CSS, wie vom OP angefordert, aber einige mögen es hilfreich finden ...


14

Anzeige: Inline-Block; verhindert eine Unterbrechung zwischen den Wörtern in einem Listenelement

 li {
    display: inline-block;
 }

1
Wenn ich mich zur jsfiddle durchklicke und die Breite der Ausgabe anpasse, brechen die einzelnen Listenelemente zwischen dem Wort "Liste" und der Zahl, was genau das ist, was das OP nicht will ...
GentlePurpleRain

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.