`
iwebcode
  • 浏览: 2008557 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

CSS position: absolute, relative详解

 
阅读更多
CSS position: absolute, relative详解

转载:http://www.jb51.net/article/16461.htm

CSS2.0 HandBook上的解释:
设置此属性值为 absolute 会将对象拖离出正常的文档流绝对定位而不考虑它周围内容的布局.假如其他具有不同 z-index 属性的对象已经占据了给定的位置,他们之间不会相互影响,而会在同一位置层叠.此时对象不具有外边距(margin),但仍有内边距(padding)和边框(border).
要激活对象的绝对(absolute)定位,必须指定left,right,top,bottom属性中的至少一个,并且设置此属性值为absolute.否则上述属性会使用他们的默认值auto,这将导致对象遵从正常的HTML布局规则,在前一个对象之后立即被呈递.

TRBL属性(top,right,bottom,left)只有当设定了position属性才有效.
当设定position: absolute
如果父级(无限)没有设定position属性,那么当前的absolute则结合TRBL属性以浏览器左上角为原始点进行定位
如果父级(无限)设定position属性,那么当前的absolute则结合TRBL属性以父级(最近)的左上角为原始点进行定位.

当设定position: relative
则参照父级(最近)的内容区的左上角为原始点结合TRBL属性进行定位(或者说相对于被定位元素在父级内容区中的上一个元素进行偏移),无父级则以BODY的左上角为原始点.相对定位是不能层叠的.在使用相对定位时,无论元素是否进行移动,元素依然占据原来的空间.因此,移动元素会导致它覆盖其他框.

一般来讲,网页居中的话用absolute就容易出错,因为网页一直是随着分辨率的大小自动适应的,而absolute则会以浏览器的左上角为原始点,不会应为分辨率的变化而变化位置.有时还需要依靠z-index来设定容器的上下关系,数值越大越在最上面,数值范围是自然数.当然有一点要注意,父子关系是无法用z-index来设定上下关系的,一定是子级在上父级在下.

设置此属性值为relative会保持对象在正常的HTML流中,但是它的位置可以根据它的前一个对象进行偏移.在相对(relative)定位对象之后的文本或对象占有他们自己的空间而不会覆盖被定位对象的自然空间.与此不同的,在绝对(absolute)定位对象之后的文本或对象在被定位对象被拖离正常文档流之前会占有它的自然空间.放置绝对(absolute)定位对象在可视区域之外会导致滚动条出现.而放置相对(relative)定位对象在可视区域之外,滚动条不会出现.其实对于定位的主要问题是要记住每个定位的意义.相对定位是"相对于"元素在文档流中初始位置的,而绝对定位是"相对于"最近的已经定位的祖先元素.
分享到:
评论

相关推荐

    css position: absolute、relative详解

    今天在看CSS的时候遇到了position: absolute、relative的问题,一直比较迷糊,今天终于搞清楚了。

    CSS之Position详解

    CSS之Position详解 CSS的很多其他属性大多容易理解,比如字体,文本,背景等。有些CSS书籍也会对这些简单的属性进行大张旗鼓的介绍,而偏偏忽略了对一些难缠的属性讲解,有避重就轻的嫌疑。CSS中主要难以理解的...

    详解CSS中position属性介绍(新增sticky)

    position的含义是指定位类型,取值类型可以有:static、relative、absolute、fixed、inherit和sticky,这里sticky是CSS3新发布的一个属性。 1、position: static static(没有定位)是position的默认值,元素处于正常...

    HTML基础知识——css样式表,样式属性,格式与布局详解

    外层没有position:absolute(或relative);那么div相对于浏览器定位,如下图中b(距离浏览器右边框为50像素,距离下边框为20像素)。  2.外层有position:absolute(或relative);那么div相对于外层边框定位,如...

    CSS属性之定位属性(图文详解)

    position: absolute; <!-- 绝对定位 --> position: relative; <!-- 相对定位 --> position: fixed; <!-- 固定定位 --> 下面逐一介绍。 相对定位 相对定位:让元素相对于自己原来的位置,进行位置...

    CSS中的 position属性sticky详解

    position的含义是指定位类型,取值类型可以有:static、relative、absolute、fixed、inherit和sticky,这里sticky是CSS3新发布的一个属性。我今天重点要说的就是sticky属性 position:sticky用法 position:sticky 被

    css元素常见定位应用.html

    在CSS中关于定位的内容是:position:relative | absolute | static | fixed。static 没有特别的设定,遵循基本的定位规定,不能通过z-index进行层次分级。在本文中,任何一个元素都被文本流所限制了自身的位置,但是...

    css常见定位属性的使用

    在CSS中关于定位的内容是:position:relative | absolute | static | fixed。static 没有特别的设定,遵循基本的定位规定,不能通过z-index进行层次分级。在本文中,任何一个元素都被文本流所限制了自身的位置,但是...

    CSS 定位之position全面了解

    但是涉及到弹出层、浮层、页面广告插件等等,都需要CSS中的position属性来定位了,对于初学者来说经常分不清楚是应该用position属性的absolute值、relative值、fixed值等等,下面我们就position属性基本的这三个值的...

    详解css position 5种不同的值的用法

    •relative •fixed •absolute •sticky 然后使用top,bottom,left和right属性定位元素。但是,除非首先设置position属性,否则这些属性将不起作用。根据位置值,它们的工作方式也不同。 position:static; 默认...

    css中position属性使用详解

    positon有4个属性:static relative absolute fixed,我们都知道absolute是绝对定位,relative是相对定位,但是这个绝对与相对是什么意思呢?绝对是什么地方的绝对,相对又是相对于什么地方而言的呢?那他们又有什么...

    详解html中 position属性用法(四种)

    position的四个属性值: 1.relative 2.absolute 3.fixed 4.static 下面分别讲述这四个属性...在上面的代码中,sub1和sub2是同级关系,如果设定sub1一个relative属性,比如设置如下CSS代码: #sub1 { position: relat

    详解css 定位与定位应用

    在CSS中关于定位的内容是:position:relative | absolute | static | fixed static 没有特别的设定,遵循基本的定位规定,不能通过z-index进行层次分级。relative 不脱离文档流,参考自身静态位置通过 top,bottom,...

    css定位position引发的层级关系问题详解

    position定位里的absolute,relative和fixed absolue:绝对定位,用top,bottom,left和right根据有定位的父级元素进行定位,如果无则相对body元素即整个页面文档进行定位。 relative:相对定位,相对自己原来的位置...

    css关于position属性的用法详解(绝对定位和相对定位的混淆)

    挺久没用,有点忘了关于position这个属性的用法,导致在练手的时候又犯了跟最开始新手才会犯的错误,那就是absolute和relative的用法。 在此首先看一下官方对这两个属性值的解释: position 属性值的含义: static ...

    css position 设置元素的定位方式详解

    CSS的 position 属性设置元素的定位方式,为将要定位的元素定义定位规则。该属性对脚本编写动画特效十分有用。 1、定位元素(positioned element)是计算后位置属性分为: relative(相对)、absolute(绝对) 、 ...

    jQuery position() 函数详解以及jQuery中position函数的应用

    所谓”被定位的元素”,就是元素的CSS position属性值为absolute、relative或fixed(只要不是默认的static即可)。 该函数返回一个坐标对象,该对象有一个left属性和top属性。属性值均为数字,它们都以像素(px)为单位...

    举例详解CSS中position属性的使用

    position 设置为 relative 的时候,元素依然在普通流中,位置是正常位置,你可以通过 left right 等移动元素。会影响其他元素的位置。 而当一个元素的 position 值为 absolute 或 fixed 的时候,会发生三件事: 把该...

Global site tag (gtag.js) - Google Analytics