巧用 position:absolute
1、跟随性

下面这种方法更加简便以及更方便维护,
例如“西部世界”,由于不用将父元素设为position:relative,position:absolute的位置也就不用根据文字多少而重新进行top、left等位置的计算。
<div class="item1">西部世界<i></i></div>
<div class="item2">
<i></i>
<img src="data:images/orange.jpg" alt=""><!--
--><i></i>
</div>
.item1 i {
position: absolute;
background: url(images/hot.png) 0 0 no-repeat;
width: 30px;
height: 16px;
margin: -6px 0 0 2px;
}
.item2 i:nth-child(1) {
position: absolute;
background: url(images/free-appointment.png) 0 0 no-repeat;
width: 56px;
height: 56px;
margin:;
}
.item2 i:nth-child(3) {
position: absolute;
background: url(images/flag_niuzhuan.jpg) 0 0 no-repeat;
width: 64px;
height: 20px;
margin-left: -64px;
overflow:hidden;
text-indent: -9em;
}
/*如果用文字不用图片*/
/* .item2 i:nth-child(1) {
position: absolute;
line-height:20px;
background-color: #f60;
padding: 0 5px;
font-size: 12px;
color: #fff;
} */
2、没有宽度没有高度,实现宽高满屏效果

上图是一个全屏的遮罩层,没有定义宽和高
<div class="mask"></div>
.mask {
position: absolute;
top:;
bottom:;
left:;
right:;
background: rgba(51, 51, 51,.5);
}
position: absolute;top: 0;left: 0;width: 50%; == position: absolute;top: 0;left: 0;right: 50%; 实现距离右侧200像素的全屏自适应的容器层 position: absolute;left: 0;right: 200px;
但是width只能用css3 cale计算 position: absolute;left: 0;width: cale(100%-200px); 宽50%,上下铺满 width: 50%;position: absolute;top: 0;bottom: 0; 3、高度自适应布局

<div class="page">
<div class="list"></div>
<div class="list"></div>
<div class="list"></div>
<div class="list"></div>
<div class="list"></div>
<div class="list"></div>
<div class="list"></div>
<div class="list"></div>
<div class="list"></div>
</div>
.page {
position: absolute;
top:;
bottom:;
left:;
right:;
}
.list {
background: #ECA7A5;
width: 33.3%;
height: 33.3%;
border-radius: 50%;
float: left;
position: relative;
}
4、如果尺寸限制、拉伸以及margin:auto;同时出现,就会出现绝对定位元素的绝对居中效果!

<div class="item3"><img src="data:images/orange.jpg" alt=""></div>
.item3 {
position: absolute;
left:;
right:;
width: 200px;
margin: auto;
}
巧用 position:absolute的更多相关文章
- 解决绝对定位div position: absolute 后面的<a> Link不能点击
今天布局的时候,遇到一个bug,当DIV设置为绝对定位时,这个div后面的相对定位的层里面的<a>Link标签无法点击. 网上的解决方案是在绝对定位层里面添加:pointer-events ...
- position absolute 绝对定位 设置问题
今天在做布局的时候,用到了绝对定位, 父级元素相对定位,子元素两个,一个元素正常文档流布局并且在前面,另一个元素绝对定位排在后面,但设置了好久,绝对定位的子元素都不会覆盖其上面的兄弟元素,最后,不知 ...
- 定位 position: absolute & relative
[position:absolute] 意思是绝对定位,他默认参照浏览器的左上角,配合TOP.RIGHT.BOTTOM.LEFT(下面简称TRBL)进行定位,有以下属性: 1)如果没有TRBL,以父级 ...
- position:absolute绝对定位解读
position:absolute绝对定位解读 摘要 用四段代码解释absolute的定位问题,进而从概念的角度切实解决html布局问题. 一.背景 常常遇到这样一些问题,很容易混淆.“浏览器屏 ...
- position:absolute/relative/fixed小结
1.绝对定位:position:absolute; 当一个div块的位置被定义为绝对定位absolute时,也就意味着它失去了文档流的位置,后面的文档流会紧跟着补上来接替它的位置.如果上下左右的绝对偏 ...
- css position:absolute 如何居中对齐
写死宽度,就好弄了 position: absolute;left: 50%;width: 980px;margin-left: -490px; text-algin:center
- 【总结】我所整理的float, inline-block还有position:absolute
这篇主要写了一下几个知识点: 浮动和inline-block的概念和选择 浮动和position:absolute对于脱离文档流的区别 这篇文章参考了一下几个链接: https://www.zhihu ...
- 关于position:absolute的困惑
今天在学习<精通css>时碰到一个问题,第六章“对列表应用样式和创建导航条”中的“Suckerfish下拉菜单”中,为了创建导航条的下拉菜单,文中提到的方法是:先设置下拉菜单的positi ...
- position:absolute和float会隐式的改变display类型
position:absolute和float会隐式的改变display类型,不论之前是什么类型的元素(display:none除外),只要设置了position:absolute或float,都会让 ...
随机推荐
- [JZOJ 5788] 餐馆
思路: 考虑树形dp. 我们设\(dp[i][j][0/1]\)表示在\(i\)为根的子树中花费\(j\)单位时间,最终回到/不必回到\(i\)的最大收益. 转移三种: \(dp[x][j][0] = ...
- Parse-轻松构建移动APP的后台服务
目前正在开发的产品告一段落,有时间总结下经验,也顺便分享一下我们主要使用的平台-Parse. 什么是Parse? Parse是一群美国人开发的专为移动APP服务的云计算平台,与现有的其他云计算平台相 ...
- YARN 原理简介
YARN 组件 参考:Spark on Yarn | Spark,从入门到精通 YARN 采用 Master/Slave结构 ,包含ResourceManager 和 NodeManager Reso ...
- 详解Android广播机制
应用场景(常见的场景1) (1)同一应用具有多个进程的不同组件之间的消息通信 a)不同应用间的组件之间的消息通信 b)与Android系统在特定情况下的通信,如:系统开机,网络变化等 (2)同一应用内 ...
- 第四周——重新clone项目后maven问题
重新clone项目后,一直报错,"类重复..." clean后install也无效果. 原因是idea在重启项目时会更改maven为默认的idea自带的maven配置,要重新设置
- 16.ajax_case09
import requests import json import re from selenium import webdriver from selenium.webdriver.common. ...
- 第四周课堂笔记4th
编码 Ascii美国 一个字节表示一个字符,必能表示汉子 大写字母65-90 小写字母97-122 265个位置 8位表示一个字节, 8bit=1byte GBK 中国 只包含本国文字 ...
- mount: you must specify the filesystem type
最近工作中遇到一个问题,在linux mount /dev/vdb 到 /home 分区时报错: 1 2 # mount /dev/vdb /home mount: you must specif ...
- 读《深入PHP 面向对象、模式与实践》笔记
1. include() 和require() 语句的不同在于它们如何处理错误.使用require()调用文件发生错误时,将会停止整个程序;调用include()时遇到相同的错误,则会生成警告并停止执 ...
- LoadRunner中字符串的操作
LoadRunner中字符串的操作 LoadRunner中常用的字符串操作函数有: strcpy(destination_string, source_string); ...