首页 > 其他分享 >11月10日定位属性

11月10日定位属性

时间:2023-11-10 20:34:54浏览次数:33  
标签:11 10 定位 top 元素 position 属性 left

目录

定位属性

需要使用position这个属性

然后这里来说一下它的属性值。

描述
static(默认值) 按照正常文档进行定位,设置了top、right、bottom、left属性也不会生效。
relative 相对于它在正常文档中的位置进行定位,通过设置top、right、bottom、left属性,可以使元素相对于其正常位置进行移动。
absolute 相对于最近已定位的(不是static)父元素进行定位。如果不存在已定位的父元素,则相对于最初的包含块(通常是html元素)进行定位。
fixed 相对于浏览器窗口进行定位,即使页面滚动,它也会保持在窗口的固定位置。
sticky 根据用户的滚动位置在容器中定位。它的行为是基于用户的滚动情况,当元素到达容器的顶部或底部时,它将保持在容器的顶部或底部,否则将表现为relative

1.static属性

static默认值,无定位,不能当作绝对定位的参照物,并且设置标签对象的left、top等值是不起作用的。

以块级标签为例

格式如下

div {
    position: static;
}

具体代码

<!--position属性值为static时-->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
  <style>
    *{
      margin: 0;
      padding: 0;
    }
    div{
        width: 200px;
        height: 200px;
        background-color: chartreuse;
        position: static;
        left: 10px;
        top: 10px;
    }
  </style>
</head>
<body>
<div></div>
</body>
</html>

这里我设置了left和top这个两个属性,但是它不会生效

效果如图

2.relative属性

设置了此属性的对象会遵循正常文档流,但将依据top、right、bottom、left等属性在正常文档流中偏移位置,而其层叠通过z-index属性定义。

以块级标签为例

格式如下

div {
    position: relative;
    top: 20px;
    left: 30px;
}

具体代码如下


<!--position属性值为relative-->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
  <style>
    *{
      margin: 0;
      padding: 0;
    }
    div{
        width: 200px;
        height: 200px;
        background-color: chartreuse;
        position: relative;
        top: 20px;
        left: 20px;
    }
  </style>
</head>
<body>
<div></div>
</body>
</html>

效果如图

3.absolute属性

1.相对于定位的祖先元素:元素的位置是相对于其最近的已定位的祖先元素。如果没有已定位的祖先元素,那么元素的位置将相对于最初的包含块。

2.脱离正常文档流:被设置为absolute的元素脱离了正常的文档流,不再占据文档中的位置。其他元素会像它不存在一样,他也不会影响其他元素的布局。

3.通过top、right、bottom、left进行定位:使用top、right、bottom、left属性,可以调整元素相对于其定位的祖先元素的位置。

以块级标签为例子

代码格式

      div{
          position: absolute;
          top: 20px;
          left: 10px;
      }

具体代码

<!--position属性为absolute-->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
  <style>

    *{
      margin: 0;
      padding: 0;
    }
    div{
        width: 200px;
        height: 200px;
        background-color: chartreuse;
        position: absolute;
        top: 20px;
        left: 20px;
    }
  </style>
</head>
<body>
<div class="a"><div class="b"></div>
</div>
</body>
</html>

效果如图

4.fixed属性

使用此属性的对象会脱离正常文档流,使用top、right、bottom、left等属性以窗口为参考点进行定位,当出现滚动条时,对象不会随着滚动。而其层叠通过z-index属性定义。

理论上被设置为fixed的元素会被定位与浏览器窗口的一个指定坐标,不论窗口是否滚动,它都会固定在这个位置。

常见的固定有如下的

我的浏览器搜索框就是一直固定在最上面,论我怎么滑动它也不会动。

然后以div标签为例子

格式

position: fixed;

具体代码如下

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <style>
        .a{
            height: 1800px;
            width: 1800px;
            background-image: url("小黄人2.jpg");
        }
        .b{
            height: 50px;
            width: 50px;
            background-color: green;
            position: fixed;
            bottom: 100px;
            right: 30px;
            left: 400px;
            top: 350px;

        }
    </style>


</head>


<body>
<div class="a">

</div>
<div class="b">固定不移动</div>
</body>


</html>

效果如图

标签:11,10,定位,top,元素,position,属性,left
From: https://www.cnblogs.com/slzjb/p/17824973.html

相关文章

  • 231110校内赛
    T1拼图首先一点需要明白的是横向移动和纵向移动并无关联接着我们可以花费\(\mathcalO(k)\)的时间来枚举左右最长长度和上下最长长度我们只需要在两次循环时分别排个序,左右和上下分别排序对于左右移动时,我们枚举每一个点在最左或最右的情况,计算出当前最小的长度,并更新最小......
  • 软件2103班【六个核桃】数据库设计心得体会
     引言本博客为在完成《软件工程导论》课程软件项目的数据库设计时的一些心得体会。数据库设计是软件开发过程中的关键环节之一,直接影响到软件系统的性能和稳定性。一个合理和高效的数据库设计能够有效地提高软件系统的运行效率和响应速度,减少资源的浪费和冗余。同时,良好的......
  • [20231103]rename IDL_UB1$后使用bbed的恢复3.txt
    [20231103]renameIDL_UB1$后使用bbed的恢复3.txt--//上午解决renameIDL_UB1$后使用bbed的恢复问题,就是涉及到的5个索引4个需要修改,其中一个因为NULL值的缘故,不需要修改。--//主要原因是rename是delete再insertobj$,反过来思考,如果修改时长度等长,我仅仅需要name等于原来的字符......
  • 11.10 模拟赛小记
    特附今日闲话。100+95+0+20.A.数字操作(num)赛时其实是看了一下样例和数据范围的一档说均为质数,无端的想到gcd于是就秒掉了。其实因为这个减数、统计不重复的过程就类似于辗转相除吧。然后就没了。没什么说的,存一下码好了。#include<bits/stdc++.h>usingnamespacestd;......
  • Linux命令(116)之logger
    linux命令之logger1.logger介绍linux命令logger是一个shell命令接口,通过该接口使用rsyslog的系统日志模块可以向系统日志文件(自定义日志文件)写入一行信息2.logger用法logger[参数][message]logger参数参数说明-i记录进程ID-t在日志中的每一行添加一个标签-p指定自定义的日志设......
  • [EFI]戴尔Latitude 5310电脑 Hackintosh 黑苹果efi引导文件
    硬件型号驱动情况主板戴尔Latitude5310处理器IntelCorei5-10210U(1.6GHz/L36M)已驱动内存8GB已驱动硬盘三星MZVLW1T0HMLH-000L2(1024GB/固态硬盘)已驱动显卡IntelUHD620已驱动声卡瑞昱AudioALC299@英特尔HighDefinitionAudio控制器已驱动网卡RTL8168HGigabitEt......
  • 11.10
    今天下雪了学习了Javaweb基础,增加操作,今天代码如下packagedao;importbean.Bean;importutils.DBUtils;importjava.sql.Connection;importjava.sql.PreparedStatement;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.util.ArrayList;importjava.util......
  • nfls 11.10挂分日记
    今天老老实实写了对拍,但是还是挂分了。T1数论分块,学了一下双指针的写法,我那个写法又对于大肠选手直接T飞了。没注意到这个数据其实很大概率都是全部输出0,在没有精心构造的情况下几乎全都跑挂了。T2一个最短路的变形题目,每个行每个列跑一个最短路就好了,将关键点之间连边,然......
  • 20231110_stack_queue
    课程笔记https://www.cnblogs.com/hellohebin/p/15677386.html上课代码//1-10/*//test1#include<bits/stdc++.h>usingnamespacestd;constintN=1e6+10;intsta[N],head=0;intn,x;intmain(){cin>>n;for(inti=1;i<=n;i++){ci......
  • 20211325 2023-2024-1 《信息安全系统设计与实现(上)》第九周学习笔记
     202113252023-2024-1《信息安全系统设计与实现(上)》第九周学习笔记一、任务要求自学教材第6章,提交学习笔记(10分),评分标准如下1.知识点归纳以及自己最有收获的内容,选择至少2个知识点利用chatgpt等工具进行苏格拉底挑战,并提交过程截图,提示过程参考下面内容(4分)“我在学***X知......