前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >可替换元素和非替换元素

可替换元素和非替换元素

作者头像
WindrunnerMax
发布2020-08-27 10:49:10
2K0
发布2020-08-27 10:49:10
举报
文章被收录于专栏:Czy‘s BlogCzy‘s Blog

可替换元素和非替换元素

可替换元素replaced element也称作可置换元素,其展现效果不是由CSS来控制的,这些元素是一种外部对象,它们外观的渲染,是独立于CSS的。非置换元素non-replaced element也称作非替换元素,其内容由CSS渲染直接表现给客户端。

可替换元素

  • 一个内容不受CSS渲染控制,CSS渲染模型并不考虑对此内容的渲染,且元素本身一般拥有固有尺寸例如宽度、高度、宽高比等的元素,被称之为置换元素。对于可替换元素,浏览器会根据元素的标签和属性,来决定元素的具体显示内容。
  • 可替换元素的内容不受当前文档的样式的影响,CSS可以影响可替换元素的位置,但不会影响到可替换元素自身的内容。对于某些可替换元素,例如<iframe>元素,可能具有自己的样式表,但它们不会继承父文档的样式。
  • CSS能对可替换元素产生的唯一影响在于,部分属性支持控制元素内容在其框中的位置或定位方式。CSS在某些情况下会对可替换元素做一些特殊处理,比如计算外边距margin和一些auto的具体值。一部分可替换元素,其本身具有的尺寸和基线baseline会被一些CSS属性用到,加入计算之中,例如vertical-align,只有可替换元素才能具有这种自带值。
  • 例如浏览器会根据<img>标签的src属性的值来读取图片信息并显示出来,图片的内容由src决定,CSS并不考虑对图片的内容进行渲染。又例如根据<input>标签的type属性来决定是显示输入框,还是单选按钮等。
  • 常见的可替换元素,例如<iframe><video><embed><img>等,有些元素在特定情况下会被当作可替换元素处理,例如<option><audio><canvas><object><applet><input>等。

非替换元素

  • 非替换元素是其内容包含在文档中的元素,其内容可以受CSS渲染控制。
  • 非替换元素的内容不会超出CSS的模型范围,CSS在渲染时会考虑非替换元素的内容。
  • HTML的大多数元素是不可替换元素,即其内容直接表现给浏览器,例如<div><p><h1>~<h6><table>等等等等。

每日一题

代码语言:javascript
复制
https://github.com/WindrunnerMax/EveryDay

参考

代码语言:javascript
复制
https://www.jianshu.com/p/87f53471d6c2
https://developer.mozilla.org/zh-CN/docs/Web/CSS/Replaced_element
https://stackoverflow.com/questions/12468176/what-is-a-non-replaced-inline-element
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-06-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 可替换元素和非替换元素
    • 可替换元素
      • 非替换元素
        • 每日一题
          • 参考
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档