CSS樣式最混亂的一個方面是應用程式中文本擴充的font-size屬性。在CSS中,你可以用四個不同的單位度量來顯示在web瀏覽器中的文字大小。這四個單位哪一種最適合Web? 這個問題引起了廣泛的爭論。找到一個確定的答案是困難的, 因為這個問題,本身就是如此難以回答。
接觸這些單位
1. “Ems”(em):“em”是一個可伸縮的單位, 用於web文檔媒體展示。一個em等於當前的字型大小,例如,如果文檔的字型大小是12 pt,1 em等於12 pt。Ems在本質上是可伸縮的,所以2 em相當於24 pt,.5 em相當於6 pt等。ems由於其延展性和適應行動裝置的特性在web文檔中正變得越來越受歡迎。
2. 像素(px):像素是固定大小的單元,用於螢幕媒體(即在電腦螢幕上讀取)。一個像素等於電腦螢幕上的一個點 (是你螢幕解析度的最小分割)。許多網頁設計師在web文檔使用像素單位以生產瀏覽器渲染的像素完美呈現的網站。像素單元的一個問題是,它沒有為視障讀者的擴充,以適應行動裝置。
3. 點(pt):點通常用於印刷媒體(任何列印在紙上的媒體,等等)。一個點等於一英寸的1/72。點更像像素,他們是固定大小的單位,不能伸縮。
4. 百分比(%):百分比單位更像“em”單位,除了一些根本性的差異。首先,當前的字型大小等於100%(比如12 pt = 100%)。當使用百分比單位,你的文字在行動裝置上仍然保持完全的延展性和可訪問性。
那麼,區別是什麼呢?
當你動態地觀察他們就很容易理解字型大小單位之間的區別。一般來說,1 em = 12 pt = 16 px = 100%。當使用這些font-size, 增加基礎本字型大小(使用CSS選取器)從100%到120%,讓我們看看會發生什麼。
正如你所看到的, 隨著基本字型大小增加em和百分比單位變大,但px 和 pt 沒有變化。為你的文本設定一個絕對的大小很容易,但它是更容易在你的訪客使用可伸縮的文本,可以顯示任何裝置或機器上。出於這個原因,em和百分比單位是web文檔文本的首選。
Em和percent的對比
我們定義點和像素單位不一定是最適合web文檔,留下來是的em和百分比單位。在理論上,em和百分比單位是相同的,但在應用程式中,他們實際上有一些細微的差別需要著重考慮。
在上面的樣本中,我們使用百分比單位作為我們的基礎字型大小(body上標記)。如果你把你的字型大小從百分比變為ems(即body{font-size:1 em;}),你可能不會注意到有什麼差別。讓我們看看當“1 em”是我們的body字型大小,當用戶端改變瀏覽器的“文字大小”設定(這在一些瀏覽器中可用,如Internet Explorer)會發生什麼。
當用戶端的瀏覽器文字大小設定為“medium”, ems和百分比之間沒有區別。然而,當設定改變,差別是相當大的。“Smallest”設定,ems比百分比小得多,而當設定為“Largest”,這時恰恰相反,ems比百分比顯示地更大。有些可能會說,當真正去擴充時em單位在擴充,在實際的應用程式中,em文本尺度變化太大, 在一些用戶端機器上最小的文本變得不是很清晰。
結論
理論上,em單位是網上新的和即將到來的字型大小標準,但在實踐中,百分比單位似乎給使用者提供一個更加一致的和可訪問的顯示。當用戶端設定改變,百分比文本以合理的比例擴充,允許設計師保持可讀性,可訪問性和視覺設計。