CSS浮动八:float崩溃特性(主要是:浮动的子元素不能撑起非浮动的父元素。)

目录

一:float崩溃

1:正常的情况,不会出现崩溃的情况

(1)一个空白的div中,如果不进行任何尺寸的设定,并且div里面没有任何内容时,div是没有高度的:

(2)当在div中添加内容时候:div中内容的高度就是div的高度;即div中的内容会把div给撑起来;

(3.1)可以认为给div设置高度:div的宽度默认充满其所在父一级元素的宽度。(div默认的高度和宽度)

(3.2)可以认为给div设置高度:div的宽度默认充满其所在父一级元素的宽度。(div默认的高度和宽度)

 (4)总结:元素的宽度默认占满父一级元素;;;;元素的高度由子元素撑起来。

2.出现了崩溃:浮动的子元素不能撑起非浮动的父元素

(1)示例1:如果把div3设为浮动:

(2)示例二:如果,div2,div3均设置成浮动:​

3.额外测试:(父一级元素是浮动,子一级也是浮动的情况等)瞎测着玩的;(这部分主要是包裹特性,暂时作废,看下篇博客)

(1)示例一:当把div1,div2,div3都设成float时:

 (2)示例二:当把div1,div2设成float时:

 (3)示例三:自然:div1,div3设成float时:

(4)示例四:div1设成浮动,其子元素非浮动时:(这个和下篇博客的包裹特性有关)


float崩溃又称float破坏、崩塌,崩溃也可称作高度塌陷:核心内容是,浮动的子元素不能撑起非浮动的父元素。

以为div为例时,float崩溃指,当子div2设置成float后,然后这个浮动的div2在一个非父div1中;div2的高度不会撑起div1的高度;下面详细解释。

一:float崩溃

1:正常的情况,不会出现崩溃的情况

(1)一个空白的div中,如果不进行任何尺寸的设定,并且div里面没有任何内容时,div是没有高度的:

<!DOCTYPE html>
<html>
<head>
<title>float崩溃演示</title>
	<link rel="stylesheet" type="text/css" href="index.css">
</head>
<body>
	<div id="div1"></div>
</body>
</html>
#div1{
	border-width: 1px;
	border-style: solid;
	border-color: black;
}

效果:


(2)当在div中添加内容时候:div中内容的高度就是div的高度;即div中的内容会把div给撑起来;

效果:


(3.1)可以认为给div设置高度:div的宽度默认充满其所在父一级元素的宽度。(div默认的高度和宽度)

效果:可以发现并没有给div设置宽度,但div的显示效果是布满了整个浏览器的屏幕宽度。为什么?

 解答:更准确的说法是,div布满了所在的上一级容器的宽度;该程序中,div所在的上一级容器就是<body>;此时<body>的宽度,就默认作为div的宽度。

即在没有设置div尺寸的情况下,div的高度就是div里面内容的高度;div的宽度就是div所处上一级容器的宽度!!!!!


(3.2)可以认为给div设置高度:div的宽度默认充满其所在父一级元素的宽度。(div默认的高度和宽度)

<!DOCTYPE html>
<html>
<head>
<title>float崩溃演示</title>
	<link rel="stylesheet" type="text/css" href="index.css">
</head>
<body>
	<div id="div1">
		<div id="div2"></div>
	&l
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值