元素位于内联与块后面的标准

2022-04-16 00:00:00 block inline html css

我曾经读到,所有可以分配宽度的元素都是块元素。这似乎对所有元素中的大多数都是正确的。但是,也有相当一部分是不正确的(例如,按钮、输入、文本区域等都可以有一个宽度分配给它,但它们都是内联元素)。

W3C在决定哪些元素成为内联元素,哪些元素成为块元素时使用了哪些标准?


解决方案

预期出现在测试段落中的元素是语法元素,因此呈现为内联级元素。其他元素是块级。另一种说法是,在它们之前和之后需要换行的元素是块级的,否则它们是内联级的。

这与为什么可以对它们应用宽度只有部分关系。重要的是它们是否呈现为单个矩形框,或者它们的内容是否可以跨越一条线断开。如果可以,则不会应用宽度,这可能是因为当宽度设置在不同的行上开始和结束时,很难计算出它真正的含义。不能跨行的内联级别元素,即inline-blockinline-table或被替换的元素,可以应用宽度设置。

相关文章