【发布时间】:2018-05-11 01:48:16
【问题描述】:
W3C source for the quotes below.
'display' 属性的以下值构成一个元素 inline-level:'inline'、'inline-table' 和 'inline-block'
因此,带有display: inline-block 的元素是内联元素。
内联级元素生成内联级盒子,即盒子 参与内联格式化上下文。
因此,所有行内级框都参与了一个行内格式化上下文。
内联框既是内联级别的,又是其内容 参与其包含的内联格式化上下文
如果所有行内级框都参与一个行内格式化上下文,并且一个行内框既是一个 inline-level box 并且参与了一个inlineformatting context,那么所有inline-level box 都是inline box 必须是真的,反之亦然。
最后,这是打破逻辑的语句:
非行内框的行内级框(如替换 行内级元素、行内块元素和行内表 元素)被称为原子内联框...
换句话说:
首先我们被告知,通过逻辑暗示,所有内联级盒子都是内联盒子。然后,我们被告知相反的情况:几个内联框(例如由带有display: inline-block 的元素生成的那些)实际上不是 内联框。
是我遗漏了什么还是引述相互矛盾?
编辑
- 我找到了@BoltClock 的以下帖子,非常好:CSS Spec - Atomic Inline Level Boxes
- 在更好地理解了整个概念之后,我还发布了另一个问题的答案。可以在这里找到:Difference between inline box and atomic inline box
【问题讨论】: