django学习入门系列之第三点《position》


  CSS 中的 position 属性用来设置元素在页面中的位置,通过该属性您可以把任何属性放置在任何您认为合适的位置。

​   可以简单的理解成,写上这个之后,他不管你前面后面写多少,直接就真正的飘起来了,直接飘在你界面上面,无论怎么滑动,都是固定在你设定位置的上方

  • fixed
  • relative
  • absolute

fixed应用

案例 固定窗口

固定在窗口某个位置

  • 注意,要加lefttop,不然显示不出来
.back{
        position: fixed;
        width: 60px;
        height: 60px;
        border: 1px solid red;
    
	/*如果不加坐标显示不出来*/
        left: 10px;
        top: 10px;
    
   /*
    	right: 10px;
        bottom: 10px;
    */
}

/*html的*/
<div class="back"></div>

案例 对话框

  • 居中

    • 方式一
      • 这种的意思是,离左边占50%,但是这个位置是最左上角。所以还要往回走250(因为宽度定义500)
      • 顶部没法设置百分比,所以是固定的(需要自己考量)
    .dialog{
            position: fixed;
            width: 500px;
            height: 300px;
            background: red;
    
            left: 50%;
            margin-left: -250px;
            top: 200px;
    }
    
    • 方式二
      • 两边都为0说明两边都是这个宽度
      • 整体上下为0,左右自动,所以居中
    .dialog{
            position: fixed;
            width: 500px;
            height: 300px;
            background: red;
    
            left: 0;
            right: 0;
            margin: 0 auto;
            top: 200px;
    }
    
  • 分析

    • 像这样的有3层
      • 最底下的页面层
      • 幕布层
      • 登录层

在这里插入图片描述

  • 如果要占满屏幕

    • 则设置上下左右都为0就行

      		left: 0;
              right: 0;
              top: 0;
              bottom: 0;
      
  • 示范:

.mask{
        background: black;
        position: fixed;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        opacity: .2;

}

.dialog{
        position: fixed;
        width: 500px;
        height: 300px;
        background: red;

        left: 50%;
        margin-left: -250px;
        top: 200px;
}
<!--注意,幕布一定要在对话框的上面,否则会被挡住-->
<div class="mask"></div>
<div class="dialog"></div>
  • 解决幕布一定要在对话框的上面的位置问题

    • z-index谁的这个大,谁就在上面
    • 设置完之后,html端那里就可以随便放了
    .mask{
            background: black;
            position: fixed;
            left: 0;
            right: 0;
            top: 0;
            bottom: 0;
            opacity: .2;
        
            z-index: 999;
    }
    
    .dialog{
            position: fixed;
            width: 500px;
            height: 300px;
            background: red;
    
            left: 50%;
            margin-left: -250px;
            top: 200px;
        
            z-index: 1000;
    }
    

在这里插入图片描述

relative与absolute

一般都是联合起来用,相对进行显示

  • 就是不管C1放在哪里,C2就是放在C1的指定位置
/*这两个结合在一起使用的意思是
内部元素的定位要取决与外部元素的定位
absolute取决于relative
*/

.c1{
        height: 399px;
        width: 433px;
        border: 10px solid red;
        margin: 0 auto;

        position: relative;
}

.c1 .c2{
        height: 59px;
        width: 49px;
        background: green;

        position: absolute;
        right: 20px;
        bottom: 30px;
}
<div class="c1">
    <div class="c2"></div>
</div>

在这里插入图片描述

  • relative与absolute的区别
  1. 文档流不同

     relative 不脱离文档流,absolute 脱离文档流。
    
  2. 分级不同

    relative 参考自身静态位置通过 top,bottom,left,right 定位,并且可以通过z-index进行层次分级。
    
    absolute选取其最近的父级top,bottom,left,right定位元素,当父级 position 为 static 时,absolute元素将以body坐标原点进行定位,可以通过z-index进行层次分级。
    
  3. 定位不同

absolute是绝对定位,绝对定位就是相对于父元素的定位,不受父元素内其他子元素的影响;而relative是相对定位,相对定位是相对于同级元素的定位,也就是上一个同级元素

往期回顾

1.【快速开发网站】
2.【浏览器能识别的标签1】
3.【浏览器能识别的标签2】
4.【浏览器能识别的标签3】
5.【浏览器能识别的标签4】
6.【案例1:用户注册】
7.【案例2:用户注册改进】
8.【快速了解 CSS】
9.【常用选择器概念讲解】
10.【CSS基础样式介绍1】
11.【CSS基础样式介绍2】
12.【CSS基础样式介绍3】
13.【CSS基础样式介绍3】
14.【案例 小米商城头标】
15.【案例 小米商城头标总结】
16.【案例 小米商城二级菜单】
17.【案例 商品推荐部分】
18.【伪类简单了解】

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值