CSS属性之absolute

时间:2023-02-05 23:24:03

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居中。

CSS属性之absolute

<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:;
right:;
margin: 0 auto;
}

1.实现全屏遮罩效果

CSS属性之absolute

  <div class="wrap">
这是一个半透明遮罩
</div>
    * {margin:; padding:;}

    .wrap {
position: absolute;
left:;
top:;
right:;
bottom:;
background-color: rgba(0,0,0,.5);
color: #fff;
}

2.使用absolute实现fixed效果

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

CSS属性之absolute

  <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:; padding:;}

    html, body {
height: 100%;
}
.wrap {
height: 100%;
overflow: auto;
}
.item {
height: 70px;
margin-bottom: 10px;
background-color: #ccc;
}
.footer {
position: absolute;
left:;
right:;
bottom:;
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:; }
.page {
position: absolute;
left:; top:; right:; bottom:;
}
.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:; right:; top:; bottom:;
margin: auto;
text-align: center;
font: 24px/30px bold 'microsoft yahei';
}

CSS属性之absolute的更多相关文章

  1. css属性的选择对动画性能的影响

    现在手机的占比越来越高,各种酷炫页面层出不穷,这些特效都离不开css动画.说到css动画,主流的情况也就无非这两大类:位移和形变.而我们在写一个动画特效的过程中,如何去提升它的性能呢?当然首先我们需要 ...

  2. CSS中浏览器开发商特定的CSS属性

    浏览器制造商(像Microsoft.Mozilla等,还有WebKit的后台人员等)通常会为他们的浏览器增加新的功能来测试新的特性, 或者实现一直在考虑但还没有得到标准组织批准的CSS扩展.在这些情况 ...

  3. CSS样式----图文详解(二):css属性

    主要内容 CSS的单位 字体属性 文本属性 背景属性 列表属性 盒子模型 定位属性:position.float.overflow.z-index等 导航栏的制作 鼠标的属性cursor 滤镜的介绍 ...

  4. CSS position relative absolute fixed

    position属性absolute与relative 详解   最近一直在研究javascript脚本,熟悉DOM中CSS样式的各种定位属性,以前对这个属性不太了解,从网上找到两篇文章感觉讲得很透彻 ...

  5. HTML编码规则、CSS属性声明顺序--简介

    From AmazeUI:http://amazeui.org/getting-started/html-css-guide HTML 属性顺序 HTML 属性应当按照以下给出的顺序依次排列,确保代码 ...

  6. 界面设计常用CSS属性

    CSS常用属性整理: 1 字体属性 font-family 设置使用的字体 font-style 设置字体的样式,是否斜体 font-variant 设置字体的大小写 font-weight 设置字体 ...

  7. CSS 属性 - position讲解

    postion 属性定义了一个元素在页面布局中的位置以及对周围元素的影响.该属性共有5个值: 1. position: static2. position: inherit3. position: r ...

  8. 十个实用但IE不支持的CSS属性

    对IE浏览器尤其是IE6的抱怨基本已进入麻痹状态,偶尔甚至产生非常消极的想法:这个世界只有一个浏览器就好了,哪怕这唯一的浏览器就是IE6.当然,这样的想法是非常病态的,马上打消.本文里面,介绍了10个 ...

  9. CSS属性(常用的属性)

    CSS属性(常用的属性)http://www.w3school.com.cn/cssref/index.asp 一:文本与字体属性 1.字体属性 (1):font-size:字体的大小(例如:font ...

随机推荐

  1. ASP&period;NET 发布到IIS后支撑woff 的解决方案

    <system.webServer>    <staticContent>        <remove fileExtension=".woff" ...

  2. jQuery最佳实践&lpar;不断更新中&period;&period;&period;&rpar;

    1. 处理cdn失效 <script type="text/javascript" src="http://xxx.com/jquery.min.js " ...

  3. WCF调用时提示错误 &quot&semi;已尝试创建到达不支持 &period;Net 框架的服务的通道。可能遇到 HTTP 终结点&quot&semi;

    一个以前运行的很正常的项目,某天突然无法连接WCF构建的后台.使用WCFTestClient连接到服务是正常的,但是调用服务中的方式时就报出了以下错误: 已尝试创建到达不支持 .Net 框架的服务的通 ...

  4. Github开源Java项目(Disconf)上传到Maven Central Repository方法详细介绍

    最近我做了一个开源项目 Disconf:Distributed Configuration Management Platform(分布式配置管理平台) ,简单来说,就是为所有业务平台系统管理配置文件 ...

  5. Source Map入门教程

    部署前端之前,开发者通常会对代码进行打包压缩,这样可以减少代码大小,从而有效提高访问速度.然而,压缩代码的报错信息是很难Debug的,因为它的行号和列号已经失真.这时就需要Source Map来还原真 ...

  6. phython廖雪峰

    这是小白的Python新手教程,具有如下特点: 中文,免费,零起点,完整示例,基于最新的Python 3版本. Python是一种计算机程序设计语言.你可能已经听说过很多种流行的编程语言,比如非常难学 ...

  7. 基于FPGA视频时序生成中的库文件

    上一篇分享了一个视频时序生成代码,下面我根据之前项目中用到的时序,对各个参数做了库文件,方便调用. -- -- Package File Template -- -- Purpose: This pa ...

  8. js-数组面试题

      <!DOCTYPE html>   <html>   <head>   <meta charset="utf-8" />   & ...

  9. 如何合理命名CSS文件——摘自网友

    有经验的网页制作者都明白,对于有多个栏目的大型网站而言,使用单一的CSS文件是不可能的.但CSS文件名如何命名对于新手来说是件容易出乱子的事.如何才能将CSS的命名做得井井有条? 坚持使用统一的CSS ...

  10. Codeforces 576C&period; Points on Plane(构造)

    将点先按x轴排序,把矩形竖着划分成$10^3$个块,每个块内点按y轴排序,然后蛇形走位上去. 这样一个点到下一个点的横坐标最多跨越$10^3$,一共$10^6$个点,总共$10^9$,一个块内最多走$ ...