浮动(float)

float

文档流

默认状态下元素在文档中所处的位置

浮动布局

适用场景 块元素的横向排布

浮动元素的特点

  1. 浮动(float)的值有两个 :左浮动(left)和右浮动(right)。
  2. 设置了浮动的元素,其默认大小有内容撑出 (对于块元素而言)
    在这里插入图片描述
    在这里插入图片描述

div中没有设置宽度,宽度等于其父元素的宽度,给div和span都设置左浮动后div的宽度是内容撑开的宽度

  1. 设置了浮动的元素,可以设置宽高。(对于行元素而言)
  2. 设置了浮动元素,水平浮动,直到遇到父级元素的边界或者另外一个浮动元素停止浮动(哪个元素在前面哪个元先浮动)
  3. 设置了浮动是元素,脱离文档流,层级提升,失去自己之前的位置,会影响到后面的元素,但不影响其前面的元素,但是如果后面的元素里有图片,或者文字,图片或者文字不受影响。
  4. 设置了浮动的元素,margin的auto失效。

浮动产生的问题

  • 浮动产生的第一个问题
    浮动的元素脱离文档流,层级提升,失去自己之前的位置,其后面的元素会受到影响,被浮动元素所覆盖,造成局部问题
    解决办法:
    给受影响的元素清除浮动的影响
    clear样式用于清除浮动产生的影响
    三个值: left:清除左浮动产生的影响
    right:清除右浮动产生的影响
    both:清除所有浮动产生的影响

  • 浮动产生的第二个问题
    如果一个元素没有设置高度,其高度默认由内容元素撑出,但是浮动元素脱离文档流,不在负责撑起父元素的高度,所以如果一个父元素里所有的子元素都浮动,那么父级元素就没有高度了,我们称之为“父级塌陷”。
    解决办法:
    1.认为给父级设置一个高度
    2.给父级加overflow:hiddien
    3.在浮动元素的最后,添加一个非行元素,并给这个元素设置clear:both

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
CSS中的浮动属性(float)用于控制元素在其父元素中的位置和布局。通过设置浮动属性,我们可以将元素从正常的文档流中脱离出来,使其沿着父元素的左侧或右侧浮动浮动属性有三个可能的取值:left、right和none。默认值为none。 - 当设置为left时,元素会向左浮动,其周围的内容会围绕在右侧。 - 当设置为right时,元素会向右浮动,其周围的内容会围绕在左侧。 - 当设置为none时,元素不进行浮动,恢复正常的文档流。 浮动元素会具有块级元素的特性,即会占据一定的空间,并且会从左到右或从右到左排列。浮动元素不会占据父元素中的空间,所以其他元素会填充浮动元素的位置。 除了浮动属性外,我们通常还需要配合一些其他属性来控制浮动元素的行为: - clear属性用于清除浮动对后续元素的影响。可以设置为left、right、both或none来指定在浮动元素的左侧、右侧或两侧不允许出现浮动元素。 - overflow属性可以用于包含浮动元素,通过设置其值为auto或hidden,可以触发父元素的块级格式化上下文,使其包含浮动元素。 需要注意的是,使用浮动属性可能会导致一些布局上的问题,如高度塌陷(clearfix问题)和重叠等。为了避免这些问题,可以使用一些技巧和清除浮动的方法。 总而言之,浮动属性是CSS中用于实现元素布局的重要属性,可以使元素浮动到指定位置,并影响周围元素的布局。然而,由于其一些潜在的问题,现代CSS布局技术更倾向于使用flexbox和grid布局来代替浮动

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值