HTML置换元素与非置换元素

一、置换元素

1. 一个内容 不受CSS视觉格式化模型控制,CSS渲染模型并不考虑对此内容的渲染,且元素本身一般拥有固有尺寸(宽度,高度,宽高比)的元素,被称之为置换元素。 

2. 置换元素就是浏览器根据元素的标签和属性,来决定元素的具体显示内容。 

3. 例如浏览器会根据img标签的src属性的值来读取图片信息并显示出来,而如果查看(X)HTML代码,则看不到图片的实际内容;又例如根据input标签的type属性来决定是显示输入框,还是单选按钮等。 

4. HTML中的img、input、textarea、select、object都是置换元素。这些元素往往没有实际的内容,即是一个空元素。

二、非置换元素

HTML 的大多数元素是不可替换元素,即其内容直接表现给用户端(例如浏览器),如:

<!-- span是非置换元素 因此 hello word 被展示出来 而不是被替换成其他内容 -->
<span> hello world </span>

三、行内级置换元素的宽度定义

1. 若宽高的计算值都为 auto 且元素有固有宽度,则 width 的使用值为该固有宽度 

例:拥有默认宽高的 input 当宽度的计算值为auto时,则宽度使用值为其默认的固有宽度

2. 若宽度的计算值为 auto 且元素有固有宽度,则 width 的使用值为该固有宽度 

3. 若宽度的计算值为 auto 且高度有 非auto 的计算值,并且元素有固有宽高比,则 width 的使用值为 高度使用值 * 固有宽高比 

例:img 当只定义了其高度值时,其宽度将会根据固有宽高比进行等比设置,这也是为什么img是行内元素,但可以设置宽高的原因

4.除此之外,当 width 的计算值为 auto 时,则宽度的使用值为 300px 

例:比如iframe, canvas

四、行内级置换元素的高度定义

1. 若宽高的计算值都为 auto 且元素有固有高度,则 height 的使用值为该固有高度;

2. 若高度的计算值为 auto 且元素有固有高度,则 height 的使用值为该固有高度;

3. 若高度的计算值为 auto 且宽度有 非auto 的计算值,并且元素有固有宽高比,则 height 的使用值为:宽度使用值 / 固有宽高比;

4. 若高度的计算值为 auto 且上述条件完全不符,则 height 的使用值 不能大于150px,且宽度不能大于长方形高度的2倍。

五、行内非置换元素的宽度、高度定义是无效的。


  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值