css样式脱离标准文档流

标准文档流指的是元素排版布局过程中,元素会默认自动从左往右,从上往下的流式排列方式。并最终窗体自上而下分成一行行,并在每行中从左至右的顺序排放元素。

元素脱离标注文档流之后,将不再在标准流中占据空间,而是处于浮动状态。离标准文档流的元素的定位基于正常的标准文档流,当一个元素脱离标准文档流后,依然在标准文档流中的其他元素将忽略该元素并填补其原先的空间。

脱离方式有两种:

1.float

没有浮动前的代码和效果图


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .one {
            width: 200px;
            height: 200px;
            border: 1px solid red;
			background-color :red;
        }
        .two {
            width: 200px;
            height: 100px;
            border: 1px solid blue;
			background-color :blue;
        }
    </style>
</head>
 
<body>
 
<div class="one">张三</div>
<div class="two">李四</div>
 
</body>

加上浮动后代码和效果


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .one {
            width: 200px;
            height: 200px;
            border: 1px solid red;
			background-color :red;
			float:right;
        }
        .two {
            width: 200px;
            height: 100px;
            border: 1px solid blue;
			background-color :blue;
        }
    </style>
</head>
 
<body>
 
<div class="one">张三</div>
<div class="two">李四</div>
 
</body>

2..定位

绝对定位

绝对定位使元素的位置与文档流无关,因此不占据空间。这一点与相对定位不同,相对定位实际上被看作普通流定位模型的一部分,因为元素的位置相对于它在普通流中的位置。

代码和效果如下


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .one {

		    position: absolute;
			left: 30px;
			top: 20px;
            width: 200px;
            height: 200px;
            border: 1px solid red;
			background-color :red;

        }
        .two {

            width: 200px;
            height: 100px;
            border: 1px solid blue;
			background-color :blue;

        }
    </style>
</head>
 
<body>
 
<div class="one">张三</div>
<div class="two">李四</div>
 
</body>

相对定位

如果对一个元素进行相对定位,它将出现在它所在的位置上。然后,可以通过设置垂直或水平位置,让这个元素“相对于”它的起点(上一个标签或者元素)进行移动。但是相对定位在元素脱离标准流后,其后元素不会补齐,脱离标准文档流的位置会被空出来。

代码和效果如下


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .one {
		    position: relative;
		    left: 30px;
		    top: 20px;
            width: 200px;
            height: 200px;
            border: 1px solid red;
			background-color :red;
        }
        .two {
            width: 200px;
            height: 100px;
            border: 1px solid blue;
			background-color :blue;
        }
    </style>
</head>
 
<body>
 
<div class="one">张三</div>
<div class="two">李四</div>
 
</body>

 

评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值