2009-10-14 13 views

Antwort

18

Sie suchen nach dem white-space property, mit dem Sie steuern können, wie sich Leerraum und Zeilenumbrüche auf den Inhalt Ihres Elements auswirken. Um Leerraum Sequenzen zu kollabieren, aber Zeilenumbrüche verhindern, können Sie den nowrap Wert verwenden:

.dates { 
    white-space: nowrap; 
} 
<td class="dates">2009-01-01</td> 
9

Ich bin sicher, es gibt einen besseren CSS Weg, aber der alte Weg ist mit einem No-break: <nobr>...</nobr> aber die Verwendung von No-Break wird dazu führen, nichts in die nächste Zeile zu gehen.

Eine andere Möglichkeit ist die Verwendung eines Non-breaking hyphen. Auf diese Weise können Sie sich immer noch umwickeln, nur nicht am Bindestrich.

+2

Non-Breaking Bindestrich ist der Weg zu gehen. +1 – Borgar

9

verwenden CSS:

.nowrap { 
    white-space: nowrap; 
} 

Wickeln Sie Ihre Daten wie: <span class="nowrap">2009-01-01</span>.

Edit: der Vorteil dieser Lösung gegenüber anderen ist, dass es Ihnen eine genauere Kontrolle darüber gibt, was sollte oder nicht wickeln. Ihre Zellen können weiterhin außerhalb der Spanne für Leerzeichen und andere Bindestriche umbrechen.

0

Erhöhung der Größe Ihres TD und es wird nicht ein Problem

+1

-1 Das hat 3 upvotes ... wirklich? –

0

sein Dieses NICHT der richtige Weg, um Ihre Frage zu beantworten, aber das ist, wie ich es tun:

<td>Hello&nbsp;-&nbsp;World</td> 

Ich mag Diese Methode ist besser, weil Sie kein <style> oder Klassenattribut hinzufügen müssen. Außerdem macht es den Text einen String, damit es nicht vom Browser umbrochen werden kann.

Wie ich schon sagte, die meisten Leute würden dem widersprechen, aber ich denke, dass hier eine praktische Lösung besser ist als die Standardlösung.

+0

Die Lösung, die Sie vorschlagen, fügt Leerzeichen hinzu, in denen in der Frage keine vorhanden war, und es ermöglicht sehr wahrscheinlich, dass Sie den Bindestrich trotzdem umbrechen. – eyelidlessness

0

Mein dummer Fehler war, dass ich vergessen habe, Leerzeichen zwischen zu setzen, da ich Abstand mit Padding setze. Ich hatte wie <span>Bla 1</span><span>Bla 2</span><span>Bla 4</span>
und es war nicht Linie zu brechen, wie ich dachte, es sollte. So, jetzt habe ich:
<span>Bla 1</span> <span>Bla 2</span> <span>Bla 4</span>
und natürlich funktioniert es, wie es sollte und wird erwartet.

Vielleicht wird mein Fehler jemand helfen ....

1

Ich habe versucht, alle diese Vorschläge. Keine funktioniert. Die Lösung wurde auf einer anderen Stack Overflow-Seite gefunden: No line-break after a hyphen. Sie können den Code für den break-freien Bindestrich &#8209; verwenden.