HTML DOM树生成之 匿名元素

匿名(anonymous)元素有两种:  匿名 block 元素 和 匿名 inline 元素.

匿名元素是指原来的DOM树中不存在的元素,但是为了满足CSS标准  而出现的一种元素。

 

什么时候会出现匿名元素呢? 这要分情况来说:

 

第一种情况:

block 元素内部包含有 block 元素和 inline 元素, 如:

 

 

这样,为了满足CSS的标准:

一个匿名block 被生成:

 

 

第二种情况:

当block 元素内部包含有匿名文本(Anonymous Text)和inline元素, 如:

 

 

为了满足CSS标准, 一个匿名inline 被生成

 

总结: block 元素内部要么全部是block元素,要么全部是inline元素 . (不考虑浮动块和绝对定位块).

 

第三种情况:

这种情况比较复杂, CSS规定 inline 元素内部只能包含inline元素. 但是如果还是有哪个网页作者,坚持要在inline元素里面插入包含block元素,如:


 

那么这时候, inline元素 <em></em> 会被破坏,拆成两部分,并且本身也被匿名block包含


 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章