引用规范:
块级框是参与块格式化上下文的框.每个块级元素生成一个主块级框,其中包含后代框和生成的内容,也是任何定位方案中涉及的框.除了主框:'list-item'元素之外,一些块级元素可能会生成其他框.这些附加盒子相对于主盒子放置.
它们基本上是一回事吗?
主块级框是由给定元素生成的块级框,该元素直接受适用于该元素的样式规则的影响.
大多数元素只生成一个框.对于这些元素,它们是本质上是一回事,因为不涉及其他框.
但是,元素可以根据其显示类型生成多个框,例如列表项 ; 当您为这样的元素声明样式时,样式通常应用于主框,并且相应地呈现生成的任何其他框.
例如,除了主框之外,列表项还有一个标记框; 如果指定list-style-position: outside,列表标记将放置在主框的边界之外,但主框的背景和边框不会受到影响.请注意,标记框仍然是主框的后代,因此可继承的属性(例如color将应用于标记)(这就是为什么color: red将文本及其项目符号标记变为红色).
大多数其他块级元素,包括display: block 但不包括display: table(参见第17.4节),只会为其内容生成一个主要的块框,而不是其他内容,使它们基本上只是"块框",但仅适用于那些元素.
换句话说,所有主要块级框都是块级框,但并非所有块级框都是主要框,例如匿名块框.此外,内联元素(包括内联块)本身不会生成任何主框,也不会出现主内联框.