HTML元素本质上是样式无关的
自从html5中出现了语义元素,html文档中的元素种类增多了,对已有的元素在样式上进行比较,其实可以发现html中的标签除了名称不同,它们的本质作用都是一样的:声明一个元素节点,只不过浏览器默认样式表(user agent stylesheet)对各种标签应用了不同的样式:
div元素的默认样式定义:

span元素的默认样式定义:
没有显示定义,应用缺省样式display:inline;
语义元素的默认样式定义:




在以上机理下,才将html元素分成了块级元素、行内元素以及行内块级元素,然而这些样式都是可以被覆盖的。html元素的本质是样式无关的,所有html元素体现的的样式都是CSS样式表的作用。在我看来,浏览器为元素使用默认样式的原因只是为了开发者使用方便。
浏览器怎么处理html5未定义的标签
html5中未定义的标签(eg:<my-element>
)仍然被当作html元素来处理,在样式方面,只不过浏览器的默认样式表中没有为这些标签定义默认样式,于是就被应用了缺省样式display:inline
,也就是行内元素。
网友评论