前端学习:CSS定位position属性的学习

首先,position属性是用来定位元素的,它是搭配left right top bottom来使用的,分别代表离左边的距离,离右边的距离......

简单的一个例子进行演示

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title></title>
		<style type="text/css">
			body{
				margin: 0;
				padding: 0;
				color: white;
				font-size: 24px;
				height: 2000px;
			}

			.big {
				background-color: slateblue;
				padding: 30px;
			}

			.box1,
			.box2,
			.box3 {
				height: 100px;
				padding: 10px;
			}

			.box1 {
				background-color: orangered;
			}

			.box2 {
				background-color: pink;
			}

			.box3 {
				background-color: purple;
			}
		</style>
	</head>
	<body>
		<div class="big">
			<div class="box1">
				A
			</div>
			<div class="box2">
				B
			</div>
			<div class="box3">
				C
			</div>
		</div>
	</body>
</html>

 定义了四个div,其中三个div嵌套在外层大div中

1,position属性常用的有这几个值:static relative absolute fixed

2,如果s不设置position属性,那么浏览器会默认的给其定义为static(静态的)

 并且,如果是是static定位的话,给其进行left right等一系列操作是不会生效的,因为元素是静态的 不能进行移动

 我们先给box2进行position属性赋值,我们先从fixed开始演示

fixed:代表固定的,是相对于整个窗口来进行定位的

当我们给box2进行fixed定位的时候,并且给其进行如下操作

.box2 {
				background-color: pink;
				position: fixed;
				left: 0;
				top: 0;
    	}

我们拖动滚动条

发现box2是不会随着我们移动的,相当于是固定在页面上了,这就是fixed定位

现在我们将box2设置为relative定位,并且让其距离左边100px,顶部100px,看一下效果

 可以看到其相对于以前本身的位置进行了移动 ,这就叫做相对定位,是相对于自己以前的位置进行定位的,不管是距离左边还是顶部都是相对于自己以前本身的位置进行移动的。

来到最后一个属性值:absolute绝对的

我们给box2进行absolute定位,并且也让其距离左边100px,顶部100px

看一下效果:

 看到这肯定很多人发出了疑问,为什么是这样的呢?

查阅文档我们知道,absolute定位标准是:依据其父元素中非static定位的元素进行定位的,听起来有点绕,听我慢慢解释:

        首先我们这个box2的父元素是外面的大盒子big,那么它是什么定位呢?,好,它没给任何的position属性值,那么它就是static的,换句话说,box2设置为绝对定位了之后,是不糊参考它进行定位的,是会一直网上找,那么就找到了body,那么body也同样是static的,那么最终就会找到整个窗口,那么它就是依据整个窗口来进行定位的。

        我们继续证明这个想法,现在给big一个定位,只要不是static的都可以,我们给他一个relative定位,并且我们让box2距离左边0px,距离下部也为0px

我们看到的效果图是这样的:

        现在我们去掉big的relative,让他变为static,看看效果:

         结果正符合我们预期的效果,距离窗口左边0px,下部0px

那么定位常用的属性值就是这些了,希望可以帮到正在学习CSS的同学们。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值