《Head First HTML与CSS 第2版》里字体与颜色一章里面讲解字体大小,作者在css文件里,把body的字体统一设置为font-size:small,我把例子简化成如下:
<body>
<h1>这是一个标题</h1>
<p>这里段落</p>
<h2>这里一个次标题</h2>
<p>这里也是段落</p>
然后是css部份
body {
font-size:small;
}
打开浏览器(chrome)看了一下,嗯,确实应用了这个css
,所有的文字都比原始的大小小了。然后,继续针对h1
标题进行字体大小设置,增加下面css
代码:
body {
font-size:small;
}
h1 {
font-size:150%;
}
按照我的理解,h1
既然已经设置成150%
,那字体应该比设置成small
时大,但等刷新页面的时候,发现设置成150%
后,h1
的字体反而比刚设置成small
时更小了。
我现在就很不理解为什么设置成150%的时候,反而更小,这中间发生了什么?网上也没有查到答案。
附图:
1、默认
body
,h1
的font-size
是16px
,32px
;2、当你设置
body
的font-size
为 13px,h1
的font-size
为 26px3、当你继续设置
h1
的时候,body
的font-size
还是 13px,但是h1
的font-size
= 父元素字体大小*150%,所以h1
font-size
为 13*150%=19.5px,小于前面的 26px,所以变小了;其实这里主要的问题是:
font-size:small;
,small
的意思是,默认
body
,h1
的font-size
是16px
,32px
;small
的结果导致前面变成13px
,26px
;small
并没有把body
和h1
的font-size
关联起来,仅仅是相对自身变小;