我在做一个项目,我必须改变一个元素的字体大小,但它的工作方式不同。例如,我有一段代码
<div class="text-area-1">
<h2>We are <span class="span1">Newbie</span></h2>
</div>
而在CSS中,我设置了
text-area-1{
font-size:60px;}
字体大小感觉不像是60px,看起来像是80px+,但当重写时,却变成了60px。
h2, span{ font-size: 60px}
谁能给我解释一下,为什么会这样?给父代(div)设置一个属性,不是也会给其他子代(h2, span)设置同样的属性吗?
给父(div)设置属性,不是会给其他子(h2, span)设置相同的属性吗?
对于一个 span
是的,就是这样。那是因为 span
是一个通用元素。从 MDN文件 网页上 span
元素。
HTML元素是一个通用的内联内容容器,它本身并不代表任何东西。
因此,span没有为它定义特定的字体大小,它继承了它的父元素的字体大小。
但是一个 h2
在浏览器的默认样式表上定义了一定的字体大小(除了一些其他的SEO目的外,这就是这个标签的全部意义)。当一个元素的样式直接应用到它身上时,它不再从它的父元素继承这个属性。