我有一個寬度爲300px的div,當我在其中填充文本時,只有當用戶輸入正常文本時,例如「Hello,would,my name是kesong「,如果句子太長,它會自動在下一行開始,因爲div可以檢測最後一個單詞是否可以保持在同一行。但是,如果用戶輸入類似於每個長文本之間沒有任何空格,比如「HELLOWOLRDTHISISKESONGHELLOWOLRDTHISISKESONG ...」超過div的寬度,文本將不會被截斷,並且會在同一行的div之外顯示。當它超過div的寬度時如何切斷文本
2
A
回答
4
在此的jsfiddle看看:http://jsfiddle.net/yM2vL/1/
基本上,你需要設置
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
在CSS
(或硬編碼的風格,但CSS是清潔劑)。如果要完全切斷文本,請使用:
text-overflow: clip;
參見:https://developer.mozilla.org/en-US/docs/Web/CSS/text-overflow其他選項
+2
或更好,請參閱[MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/文本溢出),因爲[w3schools](http://w3fools.com)經常有完全不正確的信息。 –
0
您可能需要使用word-wrap
和white-space
CSS屬性的組合。
這裏有一個潛在的解決方案(由以下指南針mixin很大程度上啓發):
div {
word-wrap: break-word;
white-space: pre;
// CSS 2.0
white-space: pre-wrap;
// CSS 2.1
white-space: pre-line;
// CSS 3.0
white-space: -pre-wrap;
// Opera 4-6
white-space: -o-pre-wrap;
// Opera 7
white-space: -moz-pre-wrap;
// Mozilla
white-space: -hp-pre-wrap;
// HP Printers
}
如果要真正地切斷在某些情況下(即不帶空格的長字)的文本,但包裹其他情況下的文本(即有空格的許多單詞),那麼這將涉及更多。我不認爲這種情況只有純CSS的解決方案,你可能需要Javascript和CSS的組合text-overflow property with ellipsis。
相關問題
- 1. 包裹在一個div的文本時,寬度超過
- 2. SVG寬度超過div
- 3. 如何在文本的長度超過div的長度時使文本換行?
- 4. CSS:當nospace超過寬度時?
- 5. HTML5帆布|當文字環繞時,文字中斷不超過最大寬度
- 6. 如何在寬度超過最大寬度時使圖像脫離div?
- 7. 如何避免超出DIV寬度限制的文本
- 8. 錯誤的div寬度,當它與javascript
- 9. 當它被切斷時調整文本的大小
- 10. 固定div寬度100%,超過960px的身體寬度
- 11. 當文本的寬度大於列的寬度時跨度DataGridCell
- 12. 如何讓div的寬度超出父寬度?
- 13. 如何擴大div的寬度以超出其父寬度?
- 14. Android:文本按鈕無序並在超過1行時切斷
- 15. 防止文字超出div的寬度
- 16. Textview寬度的「0dip」切斷了TableLayout中的文本
- 17. DIV被切斷,即使寬度和高度定義
- 18. 當它的固定寬度和最大寬度被指定時Div對齊
- 19. 當超過容器最大寬度時如何調整包裝文字的寬度? (HTML)
- 20. 子div的寬度超出父div的寬度
- 21. 如何增加文本的高度和寬度相對於它的div
- 22. 如果文本文本長度超過fPDF中的單元格寬度?
- 23. 如果它不適合父div寬度的Word換行文本
- 24. 防止文本走出容器,如果它的寬度超過90%
- 25. 當子元素超出父div的寬度時,如何防止水平滾動?
- 26. 當窗格寬度超過指定值時,將文本包裝在JTextPane中
- 27. x軸超出div寬度
- 28. UILabel - 顯示...當文本長度超過一定長度時
- 29. 文本在引導文本div中的圖像越過寬度,如何對齊圖像的寬度?
- 30. UITextView如何切斷文本
'word-wrap'就是你想要的。 – Philip
@ user3385402,真棒,問題解決了 –
不要忘記溢出:隱藏 – Banana