为什么高度在嵌入式img元素上起作用

时间:2019-03-26 13:34:41

标签: css

据我了解,内联元素通常无法使用CSS widthheight属性来调整大小。内联img似乎是一个例外,您可以使用widthheight调整其大小。

img {
  display: inline;
  height: 35px; // this works
}

我想了解这是否是专门用于img标签的东西,或者是否有其他细微差别可以使这项工作生效。

有人可以指出一些描述这种行为的规范或文档吗?

1 个答案:

答案 0 :(得分:2)

img是内联的已替换元素,与span不同,例如,它是内联的不可替换元素,我们可以定义width /替换元素的高度。这是规范的相关部分,用于定义高度/宽度的行为

https://www.w3.org/TR/CSS2/visudet.html#inline-replaced-width

https://www.w3.org/TR/CSS2/visudet.html#inline-replaced-height

当涉及到不可替换元素时,您会发现:

  

'width'属性不适用。 ref

     

“ height”属性不适用。 ref


相同的逻辑适用于转换,我们可以将转换应用于img而不是span

相关:https://stackoverflow.com/a/54227332/8620333


https://developer.mozilla.org/en-US/docs/Web/CSS/Replaced_element

https://html.spec.whatwg.org/multipage/rendering.html#replaced-elements


请注意,在the specification中,还说过内联块替换元素与内联替换元素完全相同,因此使img为inlineinline-block不会有什么区别。