【前段基础入门之】=>元素定位布局

2023-10-04 14:36

本文主要是介绍【前段基础入门之】=>元素定位布局,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

导语

CSS 元素定位,是目前 CSS 页面布局的一种主要方式。

文章目录

  • 相对定位
    • 开启相对定位
    • 相对定位的参考点
    • 相对定位的特点
  • 绝对定位
    • 开启绝对定位
    • 绝对定位的参考点
    • 绝对定位的特点
  • 固定定位
    • 开启固定定位
    • 固定定位的参考点
    • 固定位的特点
  • 粘性定位
    • 开启粘性定位
    • 粘性定位的参考点
    • 粘性定位的特点
  • 定位元素的层级
  • 定位的特殊应用场景

在这里插入图片描述

相对定位

开启相对定位

  • 给元素设置 position:relative 即可实现相对定位
  • 可以使用 left 、 right 、 top 、 bottom 四个属性调整位置。

相对定位的参考点

相对与自己开启定位前的原始位置,进行定位位置改变

相对定位的特点

  1. 不会脱离文档流,元素位置的变化,只是视觉效果上的变化,不会对其他元素产生任何影响
  2. 定位元素的显示层级比普通元素高,无论什么定位,显示层级都是一样的。默认规则是
  • 定位的元素会盖在普通元素之上
  • 都发生定位的两个元素,后开启定位的元素会盖在先开启定位的元素之上。
  1. left 不能和 right 一起设置, top 和 bottom 不能一起设置
  2. 相对定位的元素,也能继续开启浮动,但不推荐这样做
  3. 相对行为的元素,也能通过 margin 调整位置,但不推荐这样做

绝对定位

开启绝对定位

  • 给元素设置 position: absolute 即可实现绝对定位
  • 可以使用 left 、 right 、 top 、 bottom 四个属性调整位置。

绝对定位的参考点

  • 参考它的包含块
    在这里插入图片描述

绝对定位的特点

  1. 脱离文档流,会对后面的兄弟元素、父元素有影响
  2. left 不能和 right 一起设置, top bottom 不能一起设置(特殊场景除外
  3. 绝对定位、浮动不能同时设置,如果同时设置,浮动失效,以定位为主
  4. 绝对定位的元素,也能通过 margin 调整位置,但不推荐这样做
  5. 无论是什么元素(行内、行内块、块级)设置为绝对定位之后,都变成了定位元素

在这里插入图片描述


固定定位

开启固定定位

  • 给元素设置 position: fixed 即可实现固定定位
  • 可以使用 left 、 right 、 top 、 bottom 四个属性调整位置。

固定定位的参考点

  • 参考它当前的浏览器 视口
    在这里插入图片描述

固定位的特点

  1. 脱离文档流,会对后面的兄弟元素、父元素有影响
  2. left 不能和 right 一起设置, top bottom 不能一起设置。
  3. 固定定位和浮动不能同时设置,如果同时设置,浮动失效,以固定定位为主
  4. 固定定位的元素,也能通过 margin 调整位置,但不推荐这样做。
  5. 无论是什么元素(行内、行内块、块级)设置为固定定位之后,都变成了定位元素

粘性定位

开启粘性定位

  • 给元素设置 position:sticky 即可实现粘性定位。
  • 可以使用 left 、 right 、 top 、 bottom 四个属性调整位置,不过最常用的是 top 值。

粘性定位的参考点

离它最近的一个拥有 “滚动机制” 的祖先元素,即便这个祖先不是最近的真实可滚动祖先

粘性定位的特点

  • 不会脱离文档流,它是一种专门用于窗口滚动时的新的定位方式
  • 最常用的值是 top 值。
  • 粘性定位和浮动可以同时设置,但 不推荐 这样做。
  • 粘性定位的元素,也能通过 margin 调整位置,但 不推荐 这样做。

定位元素的层级

  1. 定位元素的显示层级比普通元素高,无论什么定位,显示层级默认都是一样的
  2. 如果位置发生重叠,默认情况是:后面的元素,会显示覆盖在前面元素之上
  3. 可以通过 css 属性 z-index 调整元素的显示层级
  4. z-index 的属性值是数字,没有单位,值越大显示层级越高
  5. 只有定位的元素设置 z-index 才有效
  6. 如果 z-index 值大的元素,依然没有覆盖掉 z-index 值小的元素,那么请检查其包含块的层级,可能是父级元素的整体层级低了。

定位的特殊应用场景

在这里插入图片描述

场景一:让定位元素的宽铺满 包含块(父元素)

实现:前提是定位元素没有设置固定宽高度

  1. 块宽度想与包含块一致,可以给定位元素同时设置 left,right0
  2. 高度想与包含块一致, 同时设置 top, bottom0

:向四周拉伸,铺满包含块

div {position: absolute;/* position: fixed; */top: 0;left: 0;right: 0;bottom: 0;
}

场景二:让定位元素在包含块中居中;

前提:
在这里插入图片描述

实现:

position: absolute;
/* position: fixed; */
left:0;
right:0;
top:0;
bottom:0;
margin:auto;

🚵‍♂️ 博主座右铭:向阳而生,我还在路上!
——————————————————————————————
🚴博主想说:将持续性为社区输出自己的资源,同时也见证自己的进步!
——————————————————————————————
🤼‍♂️ 如果都看到这了,博主希望留下你的足迹!【📂收藏!👍点赞!✍️评论!】
——————————————————————————————

这篇关于【前段基础入门之】=>元素定位布局的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/2213

相关文章

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

C#基础之委托详解(Delegate)

《C#基础之委托详解(Delegate)》:本文主要介绍C#基础之委托(Delegate),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 委托定义2. 委托实例化3. 多播委托(Multicast Delegates)4. 委托的用途事件处理回调函数LINQ

C++从序列容器中删除元素的四种方法

《C++从序列容器中删除元素的四种方法》删除元素的方法在序列容器和关联容器之间是非常不同的,在序列容器中,vector和string是最常用的,但这里也会介绍deque和list以供全面了解,尽管在一... 目录一、简介二、移除给定位置的元素三、移除与某个值相等的元素3.1、序列容器vector、deque

C++常见容器获取头元素的方法大全

《C++常见容器获取头元素的方法大全》在C++编程中,容器是存储和管理数据集合的重要工具,不同的容器提供了不同的接口来访问和操作其中的元素,获取容器的头元素(即第一个元素)是常见的操作之一,本文将详细... 目录一、std::vector二、std::list三、std::deque四、std::forwa

Python FastAPI入门安装使用

《PythonFastAPI入门安装使用》FastAPI是一个现代、快速的PythonWeb框架,用于构建API,它基于Python3.6+的类型提示特性,使得代码更加简洁且易于绶护,这篇文章主要介... 目录第一节:FastAPI入门一、FastAPI框架介绍什么是ASGI服务(WSGI)二、FastAP

CSS3 最强二维布局系统之Grid 网格布局

《CSS3最强二维布局系统之Grid网格布局》CS3的Grid网格布局是目前最强的二维布局系统,可以同时对列和行进行处理,将网页划分成一个个网格,可以任意组合不同的网格,做出各种各样的布局,本文介... 深入学习 css3 目前最强大的布局系统 Grid 网格布局Grid 网格布局的基本认识Grid 网

使用C++实现链表元素的反转

《使用C++实现链表元素的反转》反转链表是链表操作中一个经典的问题,也是面试中常见的考题,本文将从思路到实现一步步地讲解如何实现链表的反转,帮助初学者理解这一操作,我们将使用C++代码演示具体实现,同... 目录问题定义思路分析代码实现带头节点的链表代码讲解其他实现方式时间和空间复杂度分析总结问题定义给定

0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型的操作流程

《0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeekR1模型的操作流程》DeepSeekR1模型凭借其强大的自然语言处理能力,在未来具有广阔的应用前景,有望在多个领域发... 目录0基础租个硬件玩deepseek,蓝耘元生代智算云|本地部署DeepSeek R1模型,3步搞定一个应

CSS弹性布局常用设置方式

《CSS弹性布局常用设置方式》文章总结了CSS布局与样式的常用属性和技巧,包括视口单位、弹性盒子布局、浮动元素、背景和边框样式、文本和阴影效果、溢出隐藏、定位以及背景渐变等,通过这些技巧,可以实现复杂... 一、单位元素vm 1vm 为视口的1%vh 视口高的1%vmin 参照长边vmax 参照长边re

CSS3中使用flex和grid实现等高元素布局的示例代码

《CSS3中使用flex和grid实现等高元素布局的示例代码》:本文主要介绍了使用CSS3中的Flexbox和Grid布局实现等高元素布局的方法,通过简单的两列实现、每行放置3列以及全部代码的展示,展示了这两种布局方式的实现细节和效果,详细内容请阅读本文,希望能对你有所帮助... 过往的实现方法是使用浮动加