CSS属性之absolute

2024-06-19 23:08
文章标签 css 属性 frontend absolute

本文主要是介绍CSS属性之absolute,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

0.脱离标准文档流

绝对定位的元素会脱离标准文档流,拥有z-index属性,并且对于它的任何操作和改变都不会影响它的兄弟元素和父级元素,这里就不过多介绍。

不过值得注意的是,虽然绝对定位元素脱离的标准文档流,但是它依然会受到父元素影响哦,比如line-height和text-align属性等。

1.跟随性

绝对定位的元素脱离标准文档流之后,并不是跑到了任意的位置,而是跟在前一个没有添加absolute或者fixed值的元素后面或者下面。

不过在设置了left/top/bottom/right这些值之后,它相对位置的参照元素便是离它最近的定位(absolut/fixed/relative)元素

2.触发BFC效果

绝对定位的元素会触发BFC效果,使得inline元素也能让宽高和垂直margin生效。

3.具体用处

通过设置top、right、bottom、left四个值大小,调整元素距离四个方向的值,使得元素拉伸,来实现我们想要的效果。

 

0.left/right与width

绝对定位元素,left/right可以和width同时存在,不过最终元素宽度为width值。

给绝对定位元素同时设置left: x; right: x后,其效果更像是给绝对定位元素添加了一个虚拟不存在的父元素。

比如有一个绝对定位元素div,div设置 left: 0; right: 0,则div便多了一个width: 100%的虚拟不存在的父元素,而div的宽度便是100%,如果给div再设置一个width属性,那么div的宽度便等于width值了,这时给div添加margin:0 auto; 便能让div居中。

684501-20170117005832177-1416631112.png

<div class="page">包裹元素<div class="backTop">设置了width值的绝对定位元素</div>
</div>
.page {width: 800px;height: 1000px;background-color: #ccc;margin: 0 auto;
}
.backTop {width: 100px;height: 200px;background-color: #f34;position: absolute;left: 0;right: 0;margin: 0 auto;
}

 

1.实现全屏遮罩效果

684501-20170116003623447-1829441372.png

  <div class="wrap">这是一个半透明遮罩</div>
    * {margin: 0; padding: 0;}.wrap {position: absolute;left: 0;top: 0;right: 0;bottom: 0;background-color: rgba(0,0,0,.5);color: #fff;}

 

 2.使用absolute实现fixed效果

在移动端,使用fixed布局,有时候会遇到一些位置跳动的问题,这个时候通常可以使用absolute来代替实现,解决问题

684501-20170116005332510-1408457950.png

  <div class="wrap"><div class="main"><ul class="list"><li class="item"></li><li class="item"></li><li class="item"></li><li class="item"></li><li class="item"></li><li class="item"></li><li class="item"></li><li class="item"></li></ul></div><div class="footer">这里是底部</div></div>
    * {margin: 0; padding: 0;}html, body {height: 100%;}.wrap {height: 100%;overflow: auto;}.item {height: 70px;margin-bottom: 10px;background-color: #ccc;}.footer {position: absolute;left: 0;right: 0;bottom: 0;background-color: #5a3;}

3.宽高自适应的九宫格效果

这是从张鑫旭大哥的文章里看见的,虽然没用过这种布局,不过感觉挺不错的

<div class="page"><div class="list" data-index="1"></div><div class="list" data-index="2"></div><div class="list" data-index="3"></div><div class="list" data-index="4"></div><div class="list" data-index="5"></div><div class="list" data-index="6"></div><div class="list" data-index="7"></div><div class="list" data-index="8"></div><div class="list" data-index="9"></div>
</div>
html, body { height: 100%; margin: 0; }
.page {position: absolute;left: 0; top: 0; right: 0; bottom: 0;
}
.list {float: left;height: 33.3%; width: 33.3%;position: relative;
}
.list:before {content: '';position: absolute;display:block;/*height:100%;*//*width:100%;*/left: 10px; right: 10px; top: 10px; bottom: 10px; /* 这里通过设置left、right、top、bottom来拉伸元素,如果设置height和width属性,则会优先使用width和height */border-radius: 10px;background-color: #cad5eb;
}
.list:after {content:attr(data-index);position: absolute;height: 30px;left: 0; right: 0; top: 0; bottom: 0;margin: auto;text-align: center;font: 24px/30px bold 'microsoft yahei';
}

 

这篇关于CSS属性之absolute的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python如何调用另一个类的方法和属性

《Python如何调用另一个类的方法和属性》在Python面向对象编程中,类与类之间的交互是非常常见的场景,本文将详细介绍在Python中一个类如何调用另一个类的方法和属性,大家可以根据需要进行选择... 目录一、前言二、基本调用方式通过实例化调用通过类继承调用三、高级调用方式通过组合方式调用通过类方法/静

基于Python Playwright进行前端性能测试的脚本实现

《基于PythonPlaywright进行前端性能测试的脚本实现》在当今Web应用开发中,性能优化是提升用户体验的关键因素之一,本文将介绍如何使用Playwright构建一个自动化性能测试工具,希望... 目录引言工具概述整体架构核心实现解析1. 浏览器初始化2. 性能数据收集3. 资源分析4. 关键性能指

从入门到精通详解LangChain加载HTML内容的全攻略

《从入门到精通详解LangChain加载HTML内容的全攻略》这篇文章主要为大家详细介绍了如何用LangChain优雅地处理HTML内容,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录引言:当大语言模型遇见html一、HTML加载器为什么需要专门的HTML加载器核心加载器对比表二

spring中的@MapperScan注解属性解析

《spring中的@MapperScan注解属性解析》@MapperScan是Spring集成MyBatis时自动扫描Mapper接口的注解,简化配置并支持多数据源,通过属性控制扫描路径和过滤条件,利... 目录一、核心功能与作用二、注解属性解析三、底层实现原理四、使用场景与最佳实践五、注意事项与常见问题六

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

python删除xml中的w:ascii属性的步骤

《python删除xml中的w:ascii属性的步骤》使用xml.etree.ElementTree删除WordXML中w:ascii属性,需注册命名空间并定位rFonts元素,通过del操作删除属... 可以使用python的XML.etree.ElementTree模块通过以下步骤删除XML中的w:as

前端如何通过nginx访问本地端口

《前端如何通过nginx访问本地端口》:本文主要介绍前端如何通过nginx访问本地端口的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、nginx安装1、下载(1)下载地址(2)系统选择(3)版本选择2、安装部署(1)解压(2)配置文件修改(3)启动(4)

HTML中meta标签的常见使用案例(示例详解)

《HTML中meta标签的常见使用案例(示例详解)》HTMLmeta标签用于提供文档元数据,涵盖字符编码、SEO优化、社交媒体集成、移动设备适配、浏览器控制及安全隐私设置,优化页面显示与搜索引擎索引... 目录html中meta标签的常见使用案例一、基础功能二、搜索引擎优化(seo)三、社交媒体集成四、移动

HTML input 标签示例详解

《HTMLinput标签示例详解》input标签主要用于接收用户的输入,随type属性值的不同,变换其具体功能,本文通过实例图文并茂的形式给大家介绍HTMLinput标签,感兴趣的朋友一... 目录通用属性输入框单行文本输入框 text密码输入框 password数字输入框 number电子邮件输入编程框

HTML img标签和超链接标签详细介绍

《HTMLimg标签和超链接标签详细介绍》:本文主要介绍了HTML中img标签的使用,包括src属性(指定图片路径)、相对/绝对路径区别、alt替代文本、title提示、宽高控制及边框设置等,详细内容请阅读本文,希望能对你有所帮助... 目录img 标签src 属性alt 属性title 属性width/h