2010-11-15 89 views
0

我是新来的CSS所以我很抱歉,如果这是一个愚蠢的问题。问题与“字体大小:100%”

我做一个网站,并使用此:

body { 
    font-size: 80%; 
} 

后来,居然今天,我试图申请EricMeyer's CSS reset到我的网页的80%声明之上,但它造成种种麻烦与我的字体大小。

我不认为这会是一个问题,因为我认为字体大小100%不会改变字体,它只是“使用你父母的字体”,但事实并非如此。

这个font-size 100%声明实际上做了什么?为什么它应用于重置中的每个元素(即html,body,div,span,a,b,i,font等{font-size}),而不仅仅是我正在使用的body {font-size}要继承好)?


在我“刚刚删除100%”之前,我想知道它实际上在做什么。 100%究竟意味着什么,为什么迈尔先生将它应用于一系列元素,而不仅仅是像我一样在做的事情?

回答

1

是否使用font-size: 0.8em;工作?由于1em是“一个字符的大小”,0.8em应该给你你想要的。

+0

是的。对于相对字体大小,使用ems而不是百分比。 – Spudley 2010-11-15 12:47:31

+0

如果我在身体上使用80%或0.8em,这并不重要 - 它们彼此做同样的事情。问题在于100%的重置适用于之前的一堆元素。 – Kristina 2010-11-15 12:49:10

+0

然后从重置中删除100%? – 2010-11-15 12:50:49

0

对于你来说,问题在于,迈尔正在设置更多,只是身体元素为100%。

html, body, div, span, applet, object, iframe, 
h1, h2, h3, h4, h5, h6, p, blockquote, pre, 
a, abbr, acronym, address, big, cite, code, 
del, dfn, em, font, img, ins, kbd, q, s, samp, 
small, strike, strong, sub, sup, tt, var, 
b, u, i, center, 
dl, dt, dd, ol, ul, li, 
fieldset, form, label, legend, 
table, caption, tbody, tfoot, thead, tr, th, td { 
    margin: 0; 
    padding: 0; 
    border: 0; 
    outline: 0; 
    font-size: 100%; 
    vertical-align: baseline; 
    background: transparent; 
} 

甲快速修复。将迈尔斯font-size: 100%;更改为font-size: 80%;

的字体大小:100%;只是用于重置所有浏览器中类似的风格,我相信IE6在这方面存在一些问题。

+0

如果我在Meyers重置中将字体大小更改为80%,页面上的所有内容都变得太小而无法读取。 – Kristina 2010-11-15 13:21:38

+0

哦,我忘了他们是相对的。你为什么想要应用这个重置?只是问,因为你并不真的需要他们,有人甚至说他们是不好的。 http://meiert.com/zh-CN/blog/20080419/reset-style-sheets-are-bad/ – 2010-11-15 13:31:11

+0

因为我认为他们应该让所有浏览器的内容更加一致。公平地说,其他的一切看起来都很简单,但是这只是这种字体的东西让我很难过。我不明白继承100%甚至会改变规模,更不用说为什么它只会影响某些元素。在这一点上,我的目标更多的是理解wtf正在发生的事情,而不是“仅仅解决问题”。我喜欢知识。我想要更多。我无法弄清楚这个问题,这让我疯狂。 – Kristina 2010-11-15 13:39:59