为何有的img标签无结束标签,有的却带有结束标签?
img标签何时无需带结束标签?
首先明确:<img>是HTML中的空元素(void element),本身设计为不需要包含内容,因此在多数规范场景下都无需带结束标签,具体情况如下:
HTML5规范环境下
HTML5明确规定空元素(如img、br、input等)不需要闭合,直接写<img src="图片地址" alt="描述文本">完全符合规范,浏览器会正确解析。旧版HTML(如HTML4)的宽松解析模式
即使是HTML4标准,在浏览器的宽松解析模式中,也允许省略img的结束标签。早期很多网站为了兼容性采用这种写法,浏览器同样能正常识别。
而你看到的带</img>或<img .../>的写法,大多是遵循XHTML规范或开发者的XML习惯:
- XHTML是基于XML的标记语言,要求所有标签必须闭合,因此空元素需要写成自闭合形式
<img .../>,或冗余的<img></img>(后者无实际意义,因为img不能包含子内容)。 - 部分编辑器、模板工具会自动生成自闭合标签,属于工具生成习惯,并非HTML的强制要求。
总结:只要是编写标准HTML(非XHTML),无论版本,都可以直接使用不带结束标签的<img>,这是规范且推荐的写法。
内容的提问来源于stack exchange,提问作者theateist
相关产品推荐
相关产品推荐

