CSS 中的文字不換行省略是指當文本長度超過容器寬度時,如何處理文本的顯示。通常有兩種方式:
- 不換行:讓文本繼續在同一行顯示,直到容器不足以容納整個單詞。這就可能導致頁面出現橫向滾動條,影響用戶閱讀體驗。
- 省略:讓文本被截斷,并在結尾添加省略號,使得文本長度恰好等于容器寬度,不會出現橫向滾動條。但是由于截斷文本可能導致信息的丟失,所以省略號應該謹慎使用。
要實現 CSS 中的文字不換行省略,可以使用以下兩個屬性:
white-space
:控制換行規則。text-overflow
:控制文本過長時的處理方式。
white-space屬性有三個值可選:
- normal:默認值。文本根據瀏覽器窗口自動換行。
- nowrap:強制單行顯示,文本會在同一行內水平排列。
- pre:保留空白,文本不會自動換行。如果文本中有空格、換行符等空白字符,也會被保留。
text-overflow屬性有兩個值可選:
- clip:默認值。文本超出容器時直接被截斷,不會顯示省略號。
- ellipsis:文本超出容器時被截斷,并在結尾添加省略號顯示。
實際使用時,可以根據需求選擇不同的組合,如下例:
p { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
上述代碼實現了單行文本不換行省略,在容器寬度不足以容納完整文本時,文本結尾會顯示省略號,不會影響頁面布局。