为什么 img 标签接受 margin-top 属性?
Why does the img tag accept the margin-top property?
我想知道为什么 img
标签接受 margin top 属性?
这不是内联标签吗?内嵌标签不接受上下边距?
这是因为 img 是一个内联 replaced 元素并且它确实接受 margin-top
。它的行为不同于内联 非替换 元素(例如 span
)。
规范的相关部分对此进行了详细说明:https://www.w3.org/TR/CSS21/visudet.html#inline-replaced-height
请注意,与边距相关的限制或特殊行为与非替换内联元素不同,您可以在其中阅读:
The vertical padding, border and margin of an inline, non-replaced box start at the top and bottom of the content area, and has nothing to do with the 'line-height'. But only the 'line-height' is used when calculating the height of the line box.
width/height 的逻辑相同。他们使用 img
但不使用 span
.
另一个有关 transform
的相关问题适用相同的逻辑:CSS transform doesn't work on inline elements
我想知道为什么 img
标签接受 margin top 属性?
这不是内联标签吗?内嵌标签不接受上下边距?
这是因为 img 是一个内联 replaced 元素并且它确实接受 margin-top
。它的行为不同于内联 非替换 元素(例如 span
)。
规范的相关部分对此进行了详细说明:https://www.w3.org/TR/CSS21/visudet.html#inline-replaced-height
请注意,与边距相关的限制或特殊行为与非替换内联元素不同,您可以在其中阅读:
The vertical padding, border and margin of an inline, non-replaced box start at the top and bottom of the content area, and has nothing to do with the 'line-height'. But only the 'line-height' is used when calculating the height of the line box.
width/height 的逻辑相同。他们使用 img
但不使用 span
.
另一个有关 transform
的相关问题适用相同的逻辑:CSS transform doesn't work on inline elements