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四个值大小,调整元素距离四个方向的值,使得元素拉伸,来实现我们想要的效果。

值得注意的是,left/right可以和width同时存在,不过最终元素宽度为width值

1.实现全屏遮罩效果

  <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来代替实现,解决问题

  <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‘;
}
时间: 2024-08-09 06:33:18

CSS属性之absolute的相关文章

css中position属性(absolute/relative/static/fixed)

css中position属性(absolute/relative/static/fixed): position:static   无特殊定位,是html元素默认的定位方式,对象遵循正常文档流.top,right,bottom,left等属性不会被应用. position:relative 对象遵循正常文档流,相对的是它原本在文档流中的位置而进行的偏移,但将依据top,right,bottom,left等属性在正常文档流中偏移位置.而其层叠通过z-index属性定义. position:abso

CSS属性

CSS样式属性 一.字体 1.font-family:Tahoma,Arial,"Hiragino Sans GB";字体,第一种字体不能显示时,用第二种字体 2.font-size:xx-small or 10px字体大小:绝对大小:xx-small.x-small.medium.large.x-large.xx-large.x-large.xx-l相对大小:large smaller 使用数字和度量单位绝对单位:px:显示器像素个数mm.cm.in:毫米 厘米 英寸,使用这类单位,

CSS position的absolute和relative的解析[转]

定位一直是WEB标准应用中的难点,如果理不清楚定位那么可能应实现的效果实现不了,实现了的效果可能会走样.如果理清了定位的原理,那定位会让网页实现的更加完美. 定位的定义:在CSS中关于定位的内容是:      position:relative | absolute | static | fixed static(静态) 没有特别的设定,遵循基本的定位规定,不能通过z-index进行层次分级. relative(相对定位) 对象不可层叠.不脱离文档流,参考自身静态位置通过 top,bottom,

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

对IE浏览器尤其是IE6的抱怨基本已进入麻痹状态,偶尔甚至产生非常消极的想法:这个世界只有一个浏览器就好了,哪怕这唯一的浏览器就是IE6.当然,这样的想法是非常病态的,马上打消.本文里面,介绍了10个很实但IE却不支持的CSS属性,列出这些属性并不是为了数落IE(数落也没用),而是你了解了哪些CSS属性是IE不支持的,就更有针对性的去编写CSS和Hack了. 1. Outline 在调试CSS问题的时候,我常常在指定元素上添加border来精确的查看该元素会发生什么并帮助确定问题的来源.这常常是

CSS属性(常用的属性)

CSS属性(常用的属性)http://www.w3school.com.cn/cssref/index.asp 一:文本与字体属性 1.字体属性 (1):font-size:字体的大小(例如:font-size:14px)(em当前对象内文本字体大小 pt绝对长度单位(多少个点的单位)px相对长度单位(像素)) (2):font-family:字体的类型(例如:font-family:"隶书","宋体",Arial,"Times New Roman&quo

CSS position relative absolute fixed

position属性absolute与relative 详解 最近一直在研究javascript脚本,熟悉DOM中CSS样式的各种定位属性,以前对这个属性不太了解,从网上找到两篇文章感觉讲得很透彻,收藏下来,唯恐忘记. 一.解读absolute与relative 很多朋友问过我absolute与relative怎么区分,怎么用?我们都知道absolute是绝对定位,relative是相对定位,但是这个绝对与相对是什么意思呢?绝对是什么地方的绝对,相对又是相对于什么地方而言的呢?那他们又有什么样的

CSS属性-1

CSS属性 关于尺寸的 width  设置宽 height  设置高 min-width:  设置最小宽度 max-width:  设置最大宽度 min-height:  设置最小高度 max-height:  设置最大高度 关于文字的 font-family:微软雅黑;   设置文字字体 font-size:16px;     设置文字大小 font-weight:bold;   设置文字加粗 color:设置文字颜色 font-style:italic   设置字体为斜体 oblique 设

CSS属性之attr()

attr()准确的说,不应该是一个属性,而是一个CSS的函数,我们先看看MDN上的介绍吧: Summary The attr() CSS function is used to retrieve the value of an attribute of the selected element and use it in the style sheet. It can be used on pseudo-elements too and, in this case, the value of t

常用的CSS属性

CSS常用属性: 字体属性:(font)大小 font-size: x-large;(特大) xx-small;(极小) 一般中文用不到,只要用数值就可以,单位:PX.PD样式 font-style: oblique;(偏斜体) italic;(斜体) normal;(正常)行高 line-height: normal;(正常) 单位:PX.PD.EM粗细 font-weight: bold;(粗体) lighter;(细体) normal;(正常)变体 font-variant: small-