2011-05-30 44 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