2011-05-30 101 views
8

我在HTML/CSS工作了多年,但我想澄清一些關於設置字體大小。什麼是設置字體的最佳格式?最標準的方式在HTML/CSS設置字體大小

通常情況下,我一直在與字體大小的百分比設定,然後利用EM來改變它或從那裏下來。

這是最標準的方式來做到這一點?我見過的像素,點聲明的字體,與像相對關鍵字「大」或「小」我已經看到了它設定爲百分比等

那麼什麼是最標準的?最標準的是最好的?任何研究支持?

感謝,

回答

1

他們都standard。使用適合你的東西。

+0

我很欣賞鏈接規範 - 這正是我希望的事情類型,當我要求研究支持。 – Dan 2011-05-30 18:02:55

25

我在學校學到如下:

設置字體大小的機身與%至62.5%:

body { 
     font-size: 62.5%; 
} 

然後你可以使用EM在同樣的意義,就像使用像素,除了你除以10

例如:

h1 { 
    font-size: 1.4em; /* 14px */ 
} 

我們學會了用EM爲「彈性'佈局。如果您在em中指定字體大小,則在用戶放大或縮小後文本將保持其比例。

再然後,我看到人們用PX或其他聲明的字體所有的時間;據我所知他們都是標準的。我想這只是爲了創造最佳的用戶體驗。

+1

感謝您的支持。 62.5%來自哪裏? – Dan 2011-05-30 18:03:44

+10

@Dan - 這是基於瀏覽器的默認字體大小爲16px的假設。 16 * 62.5%= 10,因此1.4em映射到14px。這種假設並非總是如此,但對於現代瀏覽器來說,這種假設可能是可行的,對於在縮放網頁時傾向於使用邏輯像素而非物理像素的情況。 – Alohci 2011-05-30 18:11:15

+0

@Alohci - 感謝您的澄清。所以這是由瀏覽器根據瀏覽器確定的,並且可能在未來的任何時候波動?有沒有關於這方面的任何文件? – Dan 2011-05-30 18:21:55

4

您應該將標籤中的font-size設置爲100%。這樣,訪問您網站的用戶就可以看到他們在瀏覽器中設置的文字大小。例如,低視力的人可能會將文字大小設置得更大。如果您的font-size設置爲100%,則應該完全按照需要進行查看。

之後,你可以用%em設置你的h1h2p等尺寸。

2

我一般將html設置爲10px,然後在body上使用font-size: 100%。然後,您可以使用PX/EM比14px/1.4em上的元素。我遇到的唯一情況是,如果我嵌套基本元素,字體變得時髦,並且您必須在所有嵌套元素上指定font-size

例如:如果我有p, section, article, div{font-size: 1.6em;},我有p, section, article, div嵌套的任何時候,字體與容器成比例。因此原本爲16px1.6em現在是的16px(不是10px)或25.6px。您必須將文本重新縮放至0.625em(或16px/25.6px = 0.625em)。您將對跨瀏覽器的一致性有更多的控制權,但可能需要您付出更多努力。

有人可能會問,「爲什麼要經歷這一切麻煩?」這是一個很好的問題。答案如下:響應。那個,我爲一家需要符合508的公司工作。這包括對開始字體大小的最終控制。我不能假設最終用戶選擇了「中」字體或16pt字體,因爲法律明確指出它必須是X或Y以獲得高對比度等。

+1

對於時髦的嵌套元素問題,使用'rem'而不是'em',這意味着'root em'(因此指向'html'' font-size',而不是元素的父級。 (和其他老人)在http://snook.ca/archives/html_and_css/font-size-with-rem對於兼容性表,http://caniuse.com/#search=rem – RaphaelDDL 2013-05-15 14:36:53