CSS3-定位

news2024/11/15 23:31:10


    网页常见布局方式
        1 标准流
            1 块级元素独占一行 → 垂直布局
            2 行内元素/行内块元素一行显示多个 → 水平布局
        2 浮动
            可以让原本垂直布局的 块级元素变成水平布局
        3 定位
            1 可以让元素自由的摆放在网页的任意位置
            2 一般用于 盒子之间的层叠情况

        定位的常见应用场景
            1 可以解决盒子与盒子之间的层叠问题
            2 可以让盒子始终固定在屏幕中的某个位置

    使用定位的步骤
        1 设置定位方式
            属性名:position
            常见属性值:
                1 静态定位 static
                2 相对定位 relative
                3 绝对定位 absolute
                3 固定定位 fixed
        2 设置偏移值
            方向        属性名      属性值          含义
            水平        left        数字+px     距离左边的距离
            水平        right       数字+px     距离右边的距离
            垂直        top         数字+px     距离顶部的距离
            垂直        bottom      数字+px     距离底部的距离

    四种定位方式
        1 静态定位
            介绍:静态定位是默认值,就是之前认识的标准流。
            代码:position:static
            注意点:
                1 静态定位就是之前标准流,不能通过方位属性进行移动
                2 之后说的定位不包括静态定位,一般特指后几种:相对、绝对、固定

        2 相对定位
            介绍:自恋型定位,相对于自己之前的位置进行移动
            代码:position:relative
            特点:
                1 需要配合方位属性实现移动
                2 相对于自己原来位置进行移动
                3 在页面中占位置 → 没有脱标
            应用场景:
                1 配合绝对定位组CP(子绝父相)
                2 用于小范围的移动

        3 绝对定位
            介绍:拼爹型定位,相对于已经定位的父元素进行定位移动
            代码:position:absolute
            特点:
                1 需要配合方位属性实现移动
                2 默认相对于浏览器可视区域进行移动
                3 在页面中不占位置 → 已经脱标
                4 如果绝对定位的父级元素都没有设置定位,它会参照body进行移动
                5 如果父级元素有定位(除了静态定位),它会参照最近一个父元素进行移动
            应用场景:
                配合相对定位组CP(子绝父相)

        4 固定定位
            介绍:死心眼型定位,相对于浏览器进行定位移动
            代码:position:fixed
            特点:
                1 需要配合方位属性实现移动
                2 相对于浏览器可视区域进行移动
                3 在页面中不占位置 → 已经脱标
            应用场景:
                让盒子固定在屏幕中的某个位置

代码:相对定位

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .box{
            width: 200px;
            height: 200px;
            background-color: pink;
            /* 相对定位 */
            position: relative;
            /* 相对自己向右移动200px */
            left: 200px;
        }
    </style>
</head>
<body>
    <div class="box"></div>
</body>
</html>

效果图:

代码:绝对定位

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .father{
            width: 300px;
            height: 300px;
            background-color: pink;
            margin-left: 200px;
            margin-top: 200px;
            /* 父元素相对定位 */
            position: relative;
        }
        .son{
            width: 100px;
            height: 100px;
            background-color: blue;
            /* 子元素绝对定位 */
            position: absolute;
            top: 50px;
        }
    </style>
</head>
<body>
    <!-- 先注释div.father标签,看son的位置。打开注释,再看son的位置 -->
    <!-- <div class="father"> -->
        <div class="son"></div>
    <!-- </div> -->
</body>
</html>

效果图:

 

代码:固定定位

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
      }
      .w {
        width: 600px;
        height: 3000px;
        background-color: skyblue;
        margin: 0 auto;
      }
      .box {
        position: fixed;
        left: 50%;
        margin-left: 320px;
        top: 50px;
        width: 50px;
        height: 300px;
        background-color: orange;
      }
      .box1 {
        position: fixed;
        right: 50%;
        margin-right: 320px;
        top: 50px;
        width: 50px;
        height: 300px;
        background-color: orange;
      }
    </style>
  </head>
  <body>
    <div class="box"></div>
    <div class="box1"></div>
    <div class="w">
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
      <h1>滚动条</h1>
    </div>
  </body>
</html>

效果图:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/677220.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

软件项目管理 第五章 软件项目的成本管理 课后习题参考答案——主编:李冰、张桥珍、刘玉娥

第五章 软件项目的成本管理 课后习题参考答案 1.选择题 (1)&#xff08;A&#xff09;是用系统的功能数量来测量其规模,与实现产品所使用的语言和技术是没有关系的。 A.功能点 B.对象点 C.代码行 D.用例点 (2)如果你是某项目的项目经理,你已经估…

easyX库文字输出相关函数(注释版)

您好这里是limou3434的博文系列&#xff0c;感兴趣的话可以看看我的其他系列。 本次我给您带来的是easyX库的字符输出系列函数&#xff0c;祝您看得开心。 0.文字输出函数概览 函数或数据类型描述LOGFONT文字样式的结构体。settextcolor设置当前文字颜色。settextstyle设置当…

Altium Designer VS CADENCE 颜色配置

最近公司要求用CADENCE画图&#xff0c;对于我这个用了10年以上AD的老玩家来说&#xff0c;真的是很不想接受&#xff0c;虽然AD有版权问题&#xff0c;据说也容易收到律师函&#xff0c;但还是不想更换&#xff0c;毕竟用了10年了&#xff0c;感情、熟练程度摆在那里。没办法&…

继承的基本内容

在面向对象部分提到过&#xff0c;面向对象三大特性&#xff08;不是只有三个特性&#xff0c;而是指存在感最强的三个特性&#xff09;&#xff1a;封装&#xff0c;继承&#xff0c;多态。 封装&#xff1a;对比C语言&#xff0c;将数据和处理数据的方法放入一个类中&#xf…

【算法总结】——组合型回溯

文章目录 组合型回溯例题1——组合从输入考虑模板从答案考虑模板 例题2——括号生成解法一解法二 剪枝分析回溯时间复杂度的通用方法 组合型回溯 组合型和子集型之间的差异在哪里呢&#xff1f; 相比子集问题&#xff0c;组合问题是可以做一些额外的优化的&#xff08;因为只…

Linux模块文件编译到内核与独立编译成.ko文件的方法

很多粉丝在群里提问&#xff0c;如何把一个模块文件编译到内核中或者独立变异成ko文件。本文给大家详解讲解。 1. 内核目录 Linux内核源代码非常庞大&#xff0c;随着版本的发展不断增加。它使用目录树结构&#xff0c;并且使用Makefile组织配置、编译。 初次接触Linux内核&…

Visual Studio 2022写Windows程序造成CPU占用率过高故障排除

我是荔园微风&#xff0c;作为一名在IT界整整25年的老兵&#xff0c;今天针对Visual Studio 2022写Windows程序造成CPU占用率过高故障进行排除。 下面是一个标准的Windows程序&#xff0c;也可以说是经典程序了&#xff0c;但是这个程序一运行&#xff0c;WinMain.exe的CPU占用…

Android 13(T) - binder阅读(2)- ServiceManager的启动与获取

1 ServiceManager的启动 1.1 服务的启动与注册 上一篇笔记中有说到&#xff0c;ServiceManager是一个特殊的binder service&#xff0c;所以它和普通的service一样需要打开binder驱动&#xff0c;在驱动中创建一个属于ServiceManager进程的binder_proc。 int main(int argc,…

django中发送get post请求并获得数据

django中发送get post请求并获得数据 项目结构如下注册路由 urls.py在处理函数中处理请求 views.py进行 get的请求01浏览器 get请求传参数02服务器django get参数解析获取01浏览器 post的发送浏览器get 请求 获取页面返回的 form 发送post请求 带参数 02服务器django的post请求…

【Unity3D】平面光罩特效

1 前言 屏幕深度和法线纹理简介中对深度和法线纹理的来源、使用及推导过程进行了讲解&#xff0c;激光雷达特效中讲述了一种重构屏幕像素点世界坐标的方法&#xff0c;本文将沿用激光雷达特效中重构像素点世界坐标的方法&#xff0c;实现平面光罩特效。 假设平面光罩的高度为 s…

SpringCloud Alibaba入门7之引入服务网关Gateway

我们需要在客户端和服务端之间加一个统一的入口&#xff0c;来作为请求的统一接入&#xff0c;而在微服务的体系中&#xff0c;承担这个角色的就是网关。我们只需要将网关的机器IP配置到DNS,或者接入负载&#xff0c;那么客户端的服务最终通过我们的网关&#xff0c;再转发到对…

GEE:欧几里得距离——计算目标图像中每个像素到目标像素的距离

作者:CSDN @ _养乐多_ 利用欧几里得距离计算目标图像中每个像素到目标像素的距离,以量化像素与目标的接近程度。 结果如下图所示, 文章目录 一、欧几里得距离简介二、代码一、欧几里得距离简介 欧几里得距离(Euclidean distance)是在数学中常用的一种距离度量方式,用于…

Android PMS APP安装流程

仓库网址&#xff1a;http://androidxref.com/9.0.0_r3/xref/frameworks/base/services/core/java/com/android/server/pm/PackageManagerService.java 一、PMS安装APP流程图 二、文件复制 PMS处理安装HandlerParams安装参数流程图 PackageManagerService.java#installStage…

职场求生记|唐朝打工人如何绝地求生

&#x1f4da;书名&#xff1a;《长安的荔枝》 ✏️作者&#xff1a;马伯庸 作为“见微”系列神作&#xff0c;其在微信读书总榜的第一名位置持续一段时间了&#xff0c;其讲述的内容和每个人都息息相关&#xff0c;更是能引起职场人的无限共鸣&#xff0c;值得深思。 ⭐故事…

使用networkx查看某一个节点的一阶/二阶/三阶邻居

文章目录 前言手动高级 前言 一般情况下&#xff0c;貌似这些图之类的包&#xff0c;只提供查询一个节点的一阶邻居&#xff0c;但是有的时候我们需要二阶甚至三阶&#xff0c;那么该如何做呢&#xff1f; 注意一下&#xff0c;本文的方法仅可以针对二阶或者三阶&#xff0c;…

一分钟 帮你搞懂什么是柔性数组!

文章目录 什么是柔性数组&#xff1f;柔性数组的特点柔性数组的使用模拟实现柔性数组的功能柔性数组的优势 什么是柔性数组&#xff1f; 柔性数组这个概念相信大多数人博友都没有听说过&#xff0c;但是它确实存在。 在C99中&#xff0c;结构&#xff08;结构体&#xff09;的…

【雕爷学编程】Arduino动手做(121)---夏普粉尘传感器模块

37款传感器与执行器的提法&#xff0c;在网络上广泛流传&#xff0c;其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块&#xff0c;依照实践出真知&#xff08;一定要动手做&#xff09;的理念&#xff0c;以学习和交流为目的&am…

EMC学习笔记(十一)过孔

过孔 1.过孔模型1.1 过孔的数学模型1.2 对过孔模块的影响因素 2.过孔对信号传导与辐射发射影响2.2 过孔对阻抗控制的影响2.2 过孔数量对信号质量的影响 1.过孔模型 从过去设计的一些PCB板效果来看&#xff0c;过孔对于低频&#xff0c;低速信号的影响是很小的&#xff0c;但是…

Android 窗口实现原理

一、基本概念 1、窗口显示架构图 多窗口的核心原理其实就是分栈和设置栈边界2、Android的窗口分类 Android应用程序窗口,这个是最常见的&#xff08;拥有自己的WindowToken)譬如&#xff1a;Activity与Dialog Android应用程序子窗口&#xff08;必须依附到其他非子窗口才能存…

深度学习-第T11周——优化器对比实验

深度学习-第T11周——优化器对比实验 深度学习-第T11周——优化器对比实验一、前言二、我的环境三、前期工作1、导入数据集2、查看图片数目3、查看数据 四、数据预处理1、 加载数据1、设置图片格式2、划分训练集3、划分验证集4、查看标签 2、数据可视化3、检查数据4、配置数据集…