position:absolute的深入学习
来源:互联网 发布:权志龙ins视频软件 编辑:程序博客网 时间:2024/05/18 14:43
可以参考这位大神文章:
http://www.jianshu.com/p/a3da5e27d22b
设定position:absolute,元素从文档流完全删除,而position:relative会仍然作为文档流的一部分,它原本所占的空间仍然保留。
1.包裹性
一旦给元素加上absolute或float就相当于给元素加上了display:block;内联元素span默认宽度是自适应的,你给其加上width是不起作用的。要想width定宽,你需要将span设成display:block。但如果你给span加上absolute或float,那span的display属性自动就变成block,就可以指定width了。
<div style="border:4px solid red; position: absolute;"> <img src="img/25/2.jpg" /></div>
div是块状元素,不指定width的话,默认是100%,但是设定position为absolute,就会包裹内部元素。
2.
用户只给元素指定了absolute,未指定left/top/right/bottom。此时absolute元素的左上角定位点位置就是该元素正常文档流里的位置。通过对left/top/right/bottom的组合设置,由于没有position:static以外的父元素,此时absolute元素可以去任意它想去的地方。
3.
父元素是relative,则absolute的子元素就会相对父元素定位,而不是正常文档流的位置,
.tipIcon { background-color: #f00; color: #fff; border-radius:50%; text-align: center; position: absolute; width: 20px; height: 20px; right:-10px; top:-10px; }<div style="display: inline-block;position:relative;border:1px solid #000;"> <img src="./01.jpg" /> <span class="tipIcon">1</span></div>
子absolute元素不指定top等,就会在原文档流位置,而且父元素会认为其不存在;absolute指定top等均是以父元素为基准的。
实现右上角数字图标除了使用relative以及absolute以为,可以只用absolute,来具有更好的自适应性,参考开头大神文章。
4.
利用postion:absolute实现全屏覆盖:
.cover { position: absolute; left: 0;right: 0;top: 0;bottom: 0; background-color: #fff; opacity: 0.5;}<div style="display: inline-block;"> <img src="1.jpg"/></div>//全屏覆盖透明滤镜<span class="cover"></span>
用absolute的left: 0;right: 0;top: 0;bottom: 0;来实现全屏拉伸,对于absolute元素来说,如果同时设置left和right会水平拉伸,同时设置top和bottom会垂直拉伸。
如果这样写就是部分区域全覆盖:
.tipIcon { background-color: #fff; opacity: 0.5; position: absolute; top:0px; left:0px; right:0px; bottom: 0px; }<div style="display: inline-block;position:relative;border:1px solid #000;"> <img src="./01.jpg" /> <span class="tipIcon"></span></div>
这样就把整个父元素覆盖起来了。
- position:absolute的深入学习
- position:absolute 的深入探讨
- position的absolute属性
- position之absolute定位深入理解
- 深入学习absolute
- position:relative和position:absolute的区别
- position:absolute与position:relative的区别
- position的relative和absolute
- Position:absolute居中的方法
- position absolute relative的区别
- Absolute Position
- Position:absolute
- Position:absolute
- Position:absolute
- Position:absolute
- Position:absolute
- Position:absolute
- Position:absolute
- 115. Distinct Subsequences
- 快速集成一个视频直播功能
- Activiti的相关SQL语句及其具体用法
- python形参的传递/匹配
- Android Glide
- position:absolute的深入学习
- matlab中format的使用方法
- MongoDB分页处理方案(适用于一般数据库的分页方法)
- 小白的自述
- 五子棋
- Android Fragment 真正的完全解析(下)
- 2017腾讯WE大会,特别邀请「宇宙之王」霍金教授作为周年巨献
- recyclerview添加分割线的方法
- 目标版插入模块驱动时出现version magic 与 驱动模块插入成功但是不能卸载的解决办法