关于html5:img标签到底是行内元素还是块级元素

40次阅读

共计 1155 个字符,预计需要花费 3 分钟才能阅读完成。

面试官问你 <img> 是什么元素时你怎么答复

写这篇文章源自我之前的一次面试,题目便是问 img 标签属于块级元素还是行内元素,过后想都没想就说了是行内 (inline) 元素,面试官诘问为什么可能设置 <img /> 标签的宽和高,过后脑子忽然一懵,发现这是本人技术上的一个空白,所以有了这篇文章。

浏览本文您将播种

  • <img />标签的根本应用
  • MDN 对于元素的定义
  • 非凡的可替换元素

<img /> 标签的根本应用

浏览器反对

  • 所有支流浏览器都反对 <img> 标签

标签定义及应用阐明

  • <img> 标签定义 HTML 页面中的图像
  • <img> 标签有两个必须的属性:src 和 alt
  • 强烈推荐在开发中每个图像中都应用 alt 属性。这样即便图像无奈显示,用户还是能够看到对于失落了什么货色的一些信息。而且对于残疾人来说,alt 属性通常是他们理解图像内容的惟一形式

<img />到底是什么元素

<img /> 是行内元素还是块级元素?

  • <img /> 标签没有独占一行,所以是行内元素,这没啥问题

既然是行内元素为什么可能设置宽高呢?

  • 这个问题就要引申出上面局部了,<img /> 标签属于替换元素,具备内置的宽高属性,所以能够设置,具体解释看上面。

元素的定义

从元素自身的特点来讲,能够分为不可替换元素和替换元素

元素相干的 MDN 解释

不可替换元素

  • (X)HTML 的大多数元素是不可替换元素,即其内容间接体现给用户端(例如浏览器)
  • 如:<h1> 我是题目 </h1>

可替换元素

  • 浏览器依据元素的标签和属性,来决定元素的具体显示内容
  • 例如浏览器会依据 <img> 标签的 src 属性的值来读取图片信息并显示进去,而如果查看(X)HTML 代码,则看不到图片的理论内容;又例如依据 <input> 标签的 type 属性来决定是显示输入框,还是单选按钮等
  • (X)HTML 中的 <img>、<input>、<textarea>、<select>、<object> 都是替换元素。这些元素往往没有理论的内容,即是一个空元素
  • 如:<img src="tigger.jpg"/><input type="submit" name="Submit" value="提交"/>
  • 可替换元素的性质同设置了 display:inline-block 的元素统一

非凡的可替换元素

  • <img>属于可替换元素
  • <img>同时具备行内元素,行内块,和块级元素的个性
  • 替换元素个别有外在尺寸,所以具备 widthheight,能够设定

    • 例如你不指定 <img>widthheight 时,就按其内在尺寸显示,也就是图片被保留的时候的宽度和高度
  • 对于表单元素,浏览器也有默认的款式,包含宽度和高度
  • <img>、<input>属于行内替换元素。height/width/padding/margin均可用。成果等于块元素

写在最初

  • 如果你感觉这篇文章对你无益,烦请点赞以及分享给更多须要的人!
正文完
 0