css – 为什么font-family没有在此按钮中正确级联?

前端之家收集整理的这篇文章主要介绍了css – 为什么font-family没有在此按钮中正确级联?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
链接在这里:

http://jsfiddle.net/LDEt6/

第一个CSS规则将font-family设置为’Helvetica Neue’,Helvetica,Arial,sans-serif;以下CSS中的所有其他字体设置只是在Chrome 21中声明’inherit’..但是我得到“Times”作为计算字体系列而在Firefox中我得到’serif’.我错过了什么?

谢谢!

解决方法

首先我们有:
body {
     font-family : 'Helvetica Neue',sans-serif;
}

很酷,很好.但后来我们有:

html,body,input,button,<snipped...> {
     font: inherit;
}

所以字体被这个规则覆盖,这个规则也适用于body,它现在继承了.

那么继承是做什么的呢?它说“使用分配给我的父元素的样式属性”.在这种情况下,< body>的父级元素是< html>没有父母.因此根本没有指定的字体系列,因此没有任何东西可以继承.

继承不做的是使用先前为该元素定义的值.它继承自父母,而不是之前应用的风格.继承是关于HTML结构,而不是CSS结构.

最后,将整个Universe设置为从其父级继承字体,包括所有父级.因此,您实际上从未找到具有真实设置字体的父级.相反,浏览器应用其默认字体,只是它可以渲染一些东西.

如果您将身体字体规则移动到那里的巨型重置规则后,它应该开始工作.然后字体将一直继承到body标签,该标签现在具有真实字体.

猜你在找的CSS相关文章