• 可替换元素和非替换元素


    可替换元素和非替换元素

    可替换元素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>等等等等。

    每日一题

    https://github.com/WindrunnerMax/EveryDay
    

    参考

    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
    
  • 相关阅读:
    Silverlight 之 断点调试
    Silverlight 之 浅析
    Silverlight 之 新建项目解析
    Silverlight 之 创建
    有关TCP和UDP 粘包 消息保护边界
    计算机网络杂项
    RTP
    如何取消Linux下,vi中显示的^M符号
    Linux下实现定时器Timer的几种方法
    UNIX网络编程——套接字选项
  • 原文地址:https://www.cnblogs.com/WindrunnerMax/p/13084068.html
Copyright © 2020-2023  润新知