CSS—浮动定位

一、什么是定位

     指的是改变元素在页面中默认的位置。 

二、定位的分类

        1.普通流定位:

普通流定位(默认定位方式)又称为"文档流定位"
每个元素在页面中都有自己的空间
每个元素默认都是在其父元素的左上角开始出现
页面中的块级元素都是按照从上到下的方式逐个排列,每个元素独占一行
页面中的行内元素 以及 行内块元素都是按照从左到右的方式来排列的
问题:如何能够让多个块级元素在一行内显示?——用浮动定位

        2.浮动定位

浮动定位特征
元素将被排除在文档流之外(脱离文档流),不再占据页面的空间,其它未浮动元素要上前补位
浮动元素会停靠在其父元素的左边或右边,或其它已浮动元素的边缘上
浮动元素只能在当前行浮动
浮动定位解决的问题:让多个块级元素在一行内显示
浮动定位语法
属性float
 取值none:默认值,即无任何浮动效果
left:左浮动,让元素停靠在父元素的左边,或挨着左侧已有的浮动元素
right:右浮动,让元素停靠在父元素的右边,或挨着右侧已有的浮动元素

效果展示及其解析:

当d1进行左浮动时,在原来的位置的上空(相当于飘了起来),d2上前补位,在d1的下面,d3上前补位,占掉d2的位置。

 为了表示明显,我更改一下尺寸

 当d2进行左浮动时(他应该去d1的位置,),发现d1的位置已经有d1(且d1没有浮动),只能在d2的位置进行浮动(漂浮在d2位置上空),此时d3上前补位,在d2的位置。

 

d3进行左浮动,去d2的位置,d2正在占用,所以只能在原来位置上空漂浮。

   当d2进行左浮动时,他应该浮动到d1的位置,可是d1没有浮动,只能在原来位置浮动,当d3进行左浮动时,发现自己左浮动的位置,d2正在做浮动,所以只能在d2的右边进行浮动。

浮动元素会停靠在其父元素的左边或右边,或其它已浮动元素的边缘上

当三者都进行左浮动时,d1在自己原来的上空漂浮,d2想去d1的上空,发现被占用,在d1右面,相应的d3在d2的右面

2.1浮动引发的特殊效果(重点)

 

浮动引发的特殊效果(重点)

当父元素显示不下所有已浮动子元素时,最后一个将换行,但是,有可能被卡住

 

元素一旦浮动起来后,宽度将以内容为主(未指定宽度情况下)如下图:d1没有指定宽度和长度,默认大小为d1的内容大小

 

 

 

元素一旦浮动起来后,将变为块级元素
允许修改尺寸
能正常处理垂直方向外边距

 

文本,行内元素,行内块元素是采用环绕的方式来排列的,是不会被浮动元素压在底下的,而会巧妙的避开浮动元素

 

 

 2.2清除浮动所带来的影响

          元素一旦浮动起来之后,就会对后续的元素带来一定的位置影响(后续元素要上前占位),如果后续元素不想被影响的话(不想占位),那么就可以通过清除浮动的方式来解决

属性:clear
取值 none: 默认值,不做任何的清除浮动操作
  left:清除当前元素前面元素左浮动所带来的影响
  right:清除当前元素前面元素右浮动所带来的影响
  both:清除当前元素前面元素任何一种浮动所带来的影响

    效果展示:如果d3不受d2左浮动的影响,则使用clear属性,清除d2浮动所带来的影响。

 

     
 2、浮动元素对父元素高度带来的影响
  

             元素的高度,都是以未浮动元素的高度为准的。浮动元素是不占高度的

 

细看图片解析

 

 

 

方案四进行解决,记住这个就可以了。

 

 

      还有一种世界级大师解决的方案:

关于定位与浮动就先分享到这里,如果本篇博客对您的学习有所帮助,记得点个赞哦!

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值