2021-09-26css浮动

本文详细介绍了CSS浮动的概念和规则,包括浮动元素如何被推到容器边缘、如何影响其他元素的排列以及如何产生包裹性。同时,讨论了浮动带来的父元素高度塌陷问题和清除浮动的方法。此外,对比了浮动布局与inline-block布局的差异,帮助理解在不同场景下的选择。
摘要由CSDN通过智能技术生成

当一个元素浮动之后,它会被移出正常的文档流,然后向左或者向右平移,一直平移直到碰到了所处的容器的边框,或者碰到另外一个浮动的元素。

一旦让该div浮动起来,立刻会像inline元素一样产生包裹性,宽度会跟随内容自适应。(这也是通常float元素需要手动指定width的原因)

浮动规则
浮动元素会被推到他的容器的边缘。
任何浮动元素都会出现在他之前的浮动元素的旁边或是下方。如果元素都是左浮动,那么第二个元素将会出现在第一个元素的右边,如果都是右浮动,第二个元素会出现在第一个元素的左边。
左浮动的盒子不能出现在右浮动盒子的右边。
浮动元素不能高过他的容器的上边缘(当涉及到塌陷的边距这将会更复杂,请参考最初的规则)。
浮动元素不能比前一个块级元素或浮动元素高。
浮动元素不能高过前一行内联元素。
靠着另一个浮动元素的浮动元素不能超出自己的父容器边缘。
一个浮动的盒子必须尽可能的高的放置。
一个左浮动的盒子必须尽可能左的放置,一个右浮动的盒子要尽可能的右的放置。尽可能高的位置的优先级比左右高。
浮动影响
包裹性

包裹性就是父元素的宽度会收缩到和内部元素宽度一样。

浮动之所以会产生包裹性这样的效果是因为float属性会改变元素display属性最终的计算值。

设置float前的display属性——》设置浮动后的display属性计算值

inline——》block
inline-block——》block
inline-table——》table
table-row——》block
table-row-group——》block
table-column——》block
table-column-group——》block
table-caption——》b

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值