html 空格 前端乾貨 CSS 的空格處理

2021-10-11 09:02:43 字數 2540 閱讀 8831

一空格規則

html **的空格通常會被瀏覽器忽略。

上面是一行 html **,文字的前部、內部和後部各有兩個空格。為了便於識別,這裡使用半圓形符號◡表示空格。

瀏覽器的輸出結果如下。

hello world
可以看到,文字的前部和後部的空格都會忽略,內部的連續空格只會算作乙個。這就是瀏覽器處理空格的基本規則。

如果希望空格原樣輸出,可以使用

標籤。

◡◡hello◡◡world◡◡

另一種方法是,改用 html 實體 表示空格。

hello  world  

二、空格字元

html 處理空格的規則,適用於多種字元。除了普通的空格鍵,還包括製表符(t)和換行符(r和n)。

瀏覽器會自動把這些符號轉成普通的空格鍵。

hello

world

上面**中,文字內部包含了乙個換行符,瀏覽器視同為空格,輸出結果如下。

hello world
所以,文字內部的換行是無效的(除非文字放在

標籤內)。

hello

world

上面**使用

標籤顯式表示換行

三、css 的 white-space 屬性

html 語言的空格處理,基本上就是直接過濾。這樣的處理過於粗糙,完全忽視了原始文字內部的空格可能是有意義的。

css 提供了乙個white-space屬性,可以提供更精確一點的空格處理方式。該屬性共有六個值,除了乙個通用的inherit(繼承父元素),下面依次介紹剩下的五個值。

3.1 white-space: normal

white-space屬性的預設值為normal,表示瀏覽器以正常方式處理空格。

◡◡hellohellohello◡hello

world

上面**中,文字前部有兩個空格,內部有乙個長單詞和乙個換行符。

然後,容器指定乙個比較小的寬度。為了便於識別,背景色設為紅色。

p
顯示效果如下圖。

可以看到,文首的空格被忽略。由於容器太窄,第乙個單詞溢位容器,然後在後面乙個空格處換行。文字內部的換行符自動轉成了空格。

3.2 white-space: nowrap

white-space屬性為nowrap時,不會因為超出容器寬度而發生換行。

p
顯示效果如下圖。

所有文字顯示為一行,不會換行。

3.3 white-space: pre

white-space屬性為pre時,就按照

標籤的方式處理。

p

顯示效果如下圖。

上面結果與原始文字完全一致,所有空格和換行符都保留了。

3.4 white-space: pre-wrap

white-space屬性為pre-wrap時,基本還是按照

標籤的方式處理,唯一區別是超出容器寬度時,會發生換行。

p

顯示效果如下圖。

文首的空格、內部的空格和換行符都保留了,超出容器的地方發生了折行。

3.5 white-space: pre-line

white-space屬性為pre-line時,意為保留換行符。除了換行符會原樣輸出,其他都與white-space:normal規則一致。

p
顯示效果如下圖。

除了文字內部的換行符沒有轉成空格,其他都與normal的處理規則一致。這對於詩歌型別的文字很有用。

Web前端系列 HTML的空格表示

在學習和開發web前端的過程中,空格是乙個不可或缺的乙個標籤。我們知道這html網頁中插入多個空格間隔是需要特殊字元編碼的。如果是直接敲入多個空格鍵,雖然看似 中有了多個空格效果,但在瀏覽器中還是只有1個空格的間隔位置。html提供了5種空格實體 space entity 它們擁有不同的寬度,非斷行...

前端 HTML空格的六種方式

html提供了5種空格實體 space entity 它們擁有不同的寬度,非斷行空格 是常規空格的寬度,可執行於所有主流瀏覽器。其他幾種空格 在不同瀏覽器中寬度各異。它叫不換行空格,全稱no break space,它是最常見和我們使用最多的空格,大多數的人可能只接觸了 它是按下space鍵產生的空...

前端之 HTML和CSS

html和css作為前端工程師最基礎的所需具備的知識,需要前端工程師能夠深入地理解並且掌握。html控制頁面的內容,css控制頁面的樣式。這兩樣東西是使用者在頁面最直接看到的東西,所以也是最基礎 最重要的東西。萬丈高樓平地起,只有把地基打好,後續才能有更多的可能。如果你沒有乙個穩定的基礎結構,你在後...