H5 CSS布局样式定位position

news2024/9/24 22:18:37

1. H5 H5 CSS布局样式定位position

  布局是html中非常重要的一部分,而定位在页面布局中也是使用频率很高的方法,本章节为定位在布局中的使用技巧和注意事项。
  position定位有4个属性,分别是static(默认),absolute(绝对定位),relative(相对定位),fixed(固定定位–相对于浏览器窗口)。

1.1. position:relative

  生成的位置相对于自身定位的,需要注意的是使用position:relative的元素并没有脱离文档流,且原来的位置占用的空间依旧存在,只是位置发生了变化。一般使用relative来改变位置比较少,主要是用来设置子级的absolute定位的参考对象。relative分为三种情况进行说明
(1)包含关系:父级absolute,子级relative;
(2)包含关系:父级relative,子级absolute;
(3)并列关系:兄弟标签都是relative;

1.1.1. 最具常见的用法就是父级标签relative,子级标签position来做到无论浏览器如何改变,都是相对浏览器的定位。

css:

#a{
	height:200px;
	width:200px;
	position: relative;
	background-color:red;
	left:50px;
	top:50px;
}
#b{
	height:50px;
	width:50px;
	position: absolute;
	background-color:green;
	left:20px;
	top:20px;
}

html:

<div id = "a">a
    <div id = "b">b
    </div>
</div>

在这里插入图片描述

1.1.2. 正常情况下同1的效果,不过需要注意的是,当标签中包含文字时,relative会发生调整。

在这里插入图片描述
在这里插入图片描述

1.1.3. 当不存在父级元素包裹时,relative的相对位置是根据最近的一个兄弟作为参考的。

css:

#a{
	height:200px;
	width:200px;
	position: relative;
	background-color:red;
}
#b{
	height:200px;
	width:200px;
	position:relative;
	background-color:green;
	left:50px;
	top:50px;
}

html:

<div id = "a">
</div>
<div id = "b">
</div>

在这里插入图片描述

  但当a标签也设置了left、top等相关属性时,兄弟标签b继续以a变化前作为参考相对位置。
css:

#a{
	height:200px;
	width:200px;
	position: relative;
	background-color:red;
	left:50px;
	top:50px;
}
#b{
	height:200px;
	width:200px;
	position:relative;
	background-color:green;
	left:20px;
	top:20px;
}

html:

<div id = "a">
</div>
<div id = "b">
</div>

在这里插入图片描述

1.2. position:absolute

  absolute定位是布局中最常用到的定位,其生成的位置是相对于带有position属性的父(父…)级来定位;如果父级都没有position属性,则相对于document来定位;使用absolute定位后,定位元素是脱离文档流的,这时候父级会检测不到定位元素的宽高。inline元素使用absolute定位之后,可以对其设置宽高;元素是不可以同时使用绝对定位和浮动的

    <div class="relative-layout">
	     <span class="relative-item">relative布局</span>
    </div>
/*relative布局*/
.relative-layout {
    background-color: grey;
    position: relative;
    padding: 20px;
}

.relative-item {
    position: absolute;
    right: 0.02rem;
    top: 0.11rem;
    background: red;
    color: #2ac845;
}

在这里插入图片描述

  可以看到在对子级span标签absolute定位之后,可以设置宽高,且父级无法检测到子级宽高,所以无法有子级来撑开;

1.3. position:fixed

  fixed定位是相对于浏览器窗口来定位的,所以也是脱离了文档流,与absolute一样,父级会检测不到定位元素的宽高。inline元素使用absolute定位之后,可以对其设置宽高;元素是不可以同时使用fixed定位和浮动的。
  z-index属性:
  使用定位后的元素都会有z-index属性,同级定位元素这个值越大,其显示越靠前。这项属性需要注意的是比较时是同级定位元素进行比较。

      <div class="fixed-layout">
                <div class="fixed-inner"></div>
            </div>
            <div class="fixed-layout2">
                <div class="fixed-inner2"></div>
            </div>
/*fixed布局*/
.fixed-layout {
    height: 150px;
    width: 150px;
    background-color: grey;
    position: absolute;
    z-index: 1;
}

.fixed-inner {
    height: 50%;
    width: 50%;
    background: red;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
}
.fixed-layout2{
    position: absolute;
    z-index: 2;
    height: 100px;
    width: 100px;
    background: green;
}
.fixed-inner2{
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: 8;
    height: 50%;
    width: 50%;
    background: yellow;
}

在这里插入图片描述

  当两个拥有子元素的父级元素(绿色和灰色DIV)重叠时,层级高的父元素(绿色DIV)里的子元素(黄色DIV)永远在上层,即使层级底的父元素(灰色DIV)里的子元素(红色DIV)z-index的值较大。

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

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

相关文章

6芯7芯可旋转电连接器航空插头

概述 可旋转电航空插头是一种能够在旋转或相对运动的部件间稳定传输电气信号或电源的装置&#xff0c;广泛应用于航空航天、自动化设备、医疗设备等多个领域。它的核心在于精密的接触系统&#xff0c;由旋转端和固定端两部分组成&#xff0c;通过金属触点或导电环实现电气连接。…

pyflink 安装和测试

FPY Warning! 安装 apache-Flink # pip install apache-Flink -i https://pypi.tuna.tsinghua.edu.cn/simple/ Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple/ Collecting apache-FlinkDownloading https://pypi.tuna.tsinghua.edu.cn/packages/7f/a3/ad502…

华为CNA VRM搭建(使用vmware worfstartion搭建)

创建虚拟机&#xff1a; 自定义→高级 选择硬件兼容性&#xff1a;默认安装版本&#xff0c;如果未来想要将此虚拟机安装到其他电脑&#xff0c;其他电脑版本过低&#xff0c;此时可以向下兼容&#xff0c;这里我们默认版本 稍后安装操作系统&#xff1a; CNA采用Euler OS系统…

合肥鲸天科技的外卖会员卡系统有人做过吗?赚钱吗?

我们先来了解一下这个合肥鲸天科技&#xff0c;通过我在网上找到的资料和企业查询&#xff0c;这家公司还是很有实力的&#xff0c;合肥鲸天科技有限公司也是欢迎有合作的人到公司来进行一个考察和合作其他一些项目的。 外卖会员卡简介绍&#xff1a; 这个外卖会员卡&#xf…

先框架后历元还是先历元后框架?

最近测绘同行高总发现了一个问题&#xff0c;《CH/T 2014-2016 大地测量控制点坐标转换技术规范》中”5.1.4.1 a) 不同ITRF间框架转换参数的历元归算“中历元不明确&#xff0c;不知是观测历元还是目标历元。他和一些同行用一些数据测试验证后认为观测历元更为贴合实际。 ​编…

lftools frida调试小工具

前言 这两天在分析mac程序数据 &#xff0c;偶尔翻到了以前写的frida代码&#xff0c;如下 那个时候刚刚接触frida 调试Mac电脑上的程序&#xff0c;通过tcp转发到自己写的分析数据的工具上…(专门研究了一下Python的异步编程&#xff0c;libuv啥的…&#xff09; 每隔那么久…

21:I2C三:MPU6050的使用

MPU6050的使用 1、MPU6050简介1.1&#xff1a;加速度与姿态测量1.2&#xff1a;陀螺仪与姿态测量1.3&#xff1a;MPU6050内部结构1.4&#xff1a;模块内部寄存器 2、程序模拟I2C读写MPU60502.1&#xff1a;数据的读取2.2&#xff1a;转换为角度并进行融合 3、片上外设I2C2读写M…

支付域——聚合支付设计

摘要 聚合支付是支付行业的一项重要创新&#xff0c;通过整合多种支付方式&#xff0c;极大简化了支付流程&#xff0c;提升了交易效率&#xff0c;为商户和消费者提供了更加便捷的支付体验。随着移动支付的普及&#xff0c;聚合支付在未来的支付场景中将继续发挥重要作用&…

STL之初始迭代器

迭代器 什么是迭代器? - 迭代器是一种检查容器内元素并且遍历容器内元素的数据类型 迭代器的作用: - 迭代器提供对一个容器中的对象的访问方法&#xff0c;并且定义了容器中对象的范围 为什么需要迭代器? - STL提供每种容器的实现原理各不相同&#xff0c;如果没有迭代器…

心觉:《潜意识显化实操营》首批体验者招募

你是否常常感到困惑&#xff0c;对未来感到迷茫&#xff1f; 你是否在事业、生活中遇到瓶颈&#xff0c;迫切希望突破&#xff1f; 你是否想要把自己3万倍的潜意识能量释放出来 &#xff0c;助力成功&#xff1f; 你是否想要解锁你财富显化的卡点&#xff0c;顺便实现财富自…

CISSP一站通关

依托轻速云维护了一个专注于CISSP备考通关的在线学习平台&#xff0c;提供知识串讲视频&#xff0c;配合大量针对性的习题和重难点习题解析&#xff0c;帮助备考学习者高效学习和巩固知识点。已经帮助100考友顺利通过考试。 知识串讲视频是我主讲的5天直播课程的录屏&#xff0…

C# 反射之动态生成dll/exe

这个可能应该属于反射的高级使用范围了&#xff0c;平常在项目中使用的人估计也不是很多。由于使用反射的话会降低性能&#xff0c;比如之前用到的GetValue、SetValue等之类&#xff0c;但是使用这种方式会大大提高效率&#xff0c;在这里我只想说&#xff0c;都直接写IL指令了…

Qt学习之旅 I

构建一个跨平台的应用(Create A Cross-Platform Application) 目录 构建一个跨平台的应用(Create A Cross-Platform Application) 设计模式 开始构建 Qt是跨平台的C框架&#xff0c;这里&#xff0c;我们将会构建一个简单的C跨平台项目来熟悉QT是如何实现简单的跨平台的。 …

HTB-MarkUp(XXE漏洞、SSH id_rsa密钥)

前言 各位师傅大家好&#xff0c;我是qmx_07&#xff0c;今天给大家讲解MarkUp靶机 渗透过程 信息搜集 服务器开放了22SSH端口、80HTTP端口 和 443HTTPS端口 弱口令登录后台 抓取http 数据包&#xff0c;进行加载 账号密码字典 账号: admin密码: password 利用XXE漏洞 捕…

超分辨率技术之插值算法

&#x1f31e;欢迎莅临我的个人主页&#x1f448;&#x1f3fb;这里是我专注于深度学习领域、用心分享知识精粹与智慧火花的独特角落&#xff01;&#x1f349; &#x1f308;如果大家喜欢文章&#xff0c;欢迎&#xff1a;关注&#x1f377;点赞&#x1f44d;&#x1f3fb;评论…

天融信把桌面explorer.exe删了,导致开机之后无windows桌面,只能看到鼠标解决方法

win10开机进入桌面&#xff0c;发现桌面无了&#xff0c;但是可以ctrlaltdelete调出任务管理器 用管理员权限打开cmd&#xff0c;输入&#xff1a; sfc /scanfilec:\windowslexplorer.exe 在运行C:\windows\Explorer.exe&#xff1b;可以进入桌面&#xff0c;但是隔离几秒钟…

链式二叉树的基本操作(C语言版)

目录 1.二叉树的定义 2.创建二叉树 3.递归遍历二叉树 1&#xff09;前序遍历 2&#xff09;中序遍历 3&#xff09;后序遍历 4.层序遍历 5.计算节点个数 6.计算叶子节点个数 7.计算第K层节点个数 8.计算树的最大深度 9.查找值为x的节点 10.二叉树的销毁 从二叉树…

物体识别之微特征识别任务综述

“深度人工智能”是成都深度智谷科技旗下的人工智能教育机构订阅号&#xff0c;主要分享人工智能的基础知识、技术发展、学习经验等。此外&#xff0c;订阅号还为大家提供了人工智能的培训学习服务和人工智能证书的报考服务&#xff0c;欢迎大家前来咨询&#xff0c;实现自己的…

一模--解题--71-80

文章目录 9.资源管理71、 [单选] 一个项目连续错过交付日期&#xff0c;项目团队评估完该情况后&#xff0c;项目经理意识到团队绩效差的原因在于团队成员对于自己的职责缺乏清晰认识。项目经理首先应该关注哪一项&#xff1f; 13.干系人管理72、 [单选] 项目团队刚刚完成一个新…

element-plus的面包屑组件el-breadcrumb

面包屑组件主要用来显示当页面路径&#xff0c;以及快速返回之前的页面。 涉及2个组件 el-breadcrumb 和el-breadcrumb-item, el-breadcrumb的spearator指定item的分隔符 el-breadcrumb-item的to和replace属性和vue-router的一致&#xff0c;需要结合vue_router一起使用 用法…