CSS定位详解

server/2025/3/3 13:34:25/
htmledit_views">

1. 相对定位

1.1 如何设置相对定位?
给元素设置 position:relative 即可实现相对定位。
可以使用 left right top bottom 四个属性调整位置。
1.2 相对定位的参考点在哪里?
相对自己原来的位置
1.3 相对定位的特点:
1. 不会脱离文档流,元素位置的变化,只是视觉效果上的变化,不会对其他元素产生任何影响。
2. 定位元素的显示层级比普通元素高,无论什么定位,显示层级都是一样的。
默认规则是:
定位的元素会盖在普通元素之上。都发生定位的两个元素,后写的元素会盖在先写的元素之上。
3. left 不能和 right 一起设置, top bottom 不能一起设置。
4. 相对定位的元素,也能继续浮动,但不推荐这样做。
5. 相对行为的元素,也能通过 margin 调整位置,但不推荐这样做。

html" title=css>css"><!DOCTYPE html>
<html lang="zh-cn">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>01_相对定位</title><style>.outer{width: 500px;background-color: aquamarine;border: 1px solid black;padding: 20px;}.box{width: 100px;height: 100px;font-size: 20px;}.box1 {background-color: red;}.box2 {background-color: green;position: relative;left: 10px;}.box3 {background-color: hotpink;}</style>
</head>
<body><div class="outer"><div class="box box1">1</div><div class="box box2">2</div><div class="box box3">3</div></div>
</body>
</html>

 注意:绝大多数情况下,相对定位,会与绝对定位配合使用。

2. 绝对定位

2.1 如何设置绝对定位?
给元素设置 position: absolute 即可实现绝对定位。
可以使用 left right top bottom 四个属性调整位置。
绝对定位的参考点是参考它的 包含块

什么是包含块?
1. 对于没有脱离文档流的元素:包含块就是父元素;
2. 对于脱离文档流的元素:包含块是第一个拥有定位属性的祖先元素(如果所有祖先都
没定位,那包含块就是整个页面)

口诀:子绝父相(子元素开启绝对定位,父元素就要开启相对定位)

鼠标浮动在父元素上,盒子2向右移动200px

html" title=css>css"><!DOCTYPE html>
<html lang="zh-cn"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>02_绝对定位</title><style>.outer {width: 500px;background-color: aquamarine;border: 1px solid black;padding: 20px;position: relative;}.box {width: 100px;height: 100px;font-size: 20px;}.box1 {background-color: red;}.box2 {background-color: green;/* 给2开启了绝对定位,他就脱离了文档流 3就占领了2的位置 */position: absolute;}.box3 {background-color: hotpink;}.outer:hover .box2{right: 200px;}</style>
</head><body><div class="outer"><div class="box box1">1</div><div class="box box2">2</div><div class="box box3">3</div></div>
</body></html>


http://www.ppmy.cn/server/172082.html

相关文章

MCAL-I/O驱动

I/O驱动由PORT驱动、DIO驱动、ADC驱动、PWM驱动、ICU驱动、OCU驱动六部分组成。 1. PORT驱动 功能概述: PORT 驱动初始化是对微控制器的整个 PORT 模块进行初始化配置。它负责配置端口和管脚的功能,如通用 I/O、模数转换、脉宽调制等。 实现方法: 初始化端口引脚。设置引…

Docker--Docker 镜像制作

镜像制作的原因 镜像制作是因为官方镜像无法满足自身需求&#xff0c;从而需要自己制作&#xff0c;我们需要通过条件来进行满足需求&#xff1b; 在软件开发过程中&#xff0c;开发环境和生产环境的差异可能导致“在我的机器上可以运行”的问题。Docker镜像将应用程序及其依…

SheetDataMerge合并工作表(excel)内多行同类数据的小工具。

SheetDataMerge SheetDataMerge是一款简单易用的工具&#xff0c;能够快速合并工作表中的多行同类数据。虽然Excel自带的数据透视表也能实现类似功能&#xff0c;但它属于进阶操作&#xff0c;需要一定的学习成本。 相比之下&#xff0c;SheetDataMerge的操作非常便捷&#xff…

DHCP配置实验

实验拓扑图 首先配置server的IP地址和网关 接下来配置R1 undo info-center enable dhcp enable //开启DHCP服务 ip pool dhcp-pool1 //开始配置dhcp地址池 gateway-list 192.168.1.254 //配置网关 network 192.168.1.0 mask 255.255.255.0 //配置网段和子网掩码 dns-list …

MySQL,Oracle,MariaDB的区别

MySQL、Oracle 和 MariaDB 都是流行的关系型数据库管理系统&#xff0c;它们各有特点&#xff0c;适用于不同的应用场景。以下是它们之间的主要区别&#xff1a; 1. MySQL 开发者&#xff1a;最初由 MySQL AB 开发&#xff0c;后来被 Oracle 公司收购。许可证&#xff1a;开源…

【AI+智造】在阿里云Ubuntu 24.04上部署DeepSeek R1 14B的完整方案

作者&#xff1a;Odoo技术开发/资深信息化负责人 日期&#xff1a;2025年2月28日 一、部署背景与目标 DeepSeek R1作为国产大语言模型的代表&#xff0c;凭借其强化学习驱动的推理能力&#xff0c;在复杂任务&#xff08;如数学问题、编程逻辑&#xff09;中表现优异。本地化部…

《HarmonyOS赋能的智能影像诊断系统安全架构与临床实践》

一、行业背景与技术选型&#xff08;医疗影像分析&#xff09; 1.1 医疗行业痛点与AI机遇 医疗影像领域存在海量数据处理压力&#xff0c;传统人工阅片存在效率低、误诊率高等问题。基于HarmonyOS NEXT的端侧AI能力&#xff0c;可部署轻量化医学影像分析模型&#xff0c;实现…

【欢迎来到Git世界】Github入门

241227 241227 241227 Hello World 参考&#xff1a;Hello World - GitHub 文档. 1.创建存储库 r e p o s i t o r y repository repository&#xff08;含README.md&#xff09; 仓库名需与用户名一致。 选择公共。 选择使用Readme初始化此仓库。 2.何时用分支&#xf…