理解position定位

使用css布局position非常重要,语法如下:

position:static | relative | absolute | fixed | center | page | sticky

默认值:static,center、page、sticky是CSS3中新增加的值。



(1)、static



可以认为静态的,默认元素都是静态的定位,对象遵循常规流。此时4个定位偏移属性不会被应用,也就是使用left,right,bottom,top将不会生效。

(2)、relative



相对定位,对象遵循常规流,并且参照自身在常规流中的位置通过top,right,bottom,left这4个定位偏移属性进行偏移时不会影响常规流中的任何元素。

(3)、absolute



a、绝对定位,对象脱离常规流,此时偏移属性参照的是离自身最近的定位祖先元素,如果没有定位的祖先元素,则一直回溯到body元素。盒子的偏移位置不影响常规流中的任何元素,其margin不与其他任何margin折叠。

b、元素定位参考的是离自身最近的定位祖先元素,要满足两个条件,第一个是自己的祖先元素,可以是父元素也可以是父元素的父元素,一直找,如果没有则选择body为对照对象。第二个条件是要求祖先元素必须定位,通俗说就是position的属性值为非static都行。

(4)、fixed



固定定位,与absolute一致,但偏移定位是以窗口为参考。当出现滚动条时,对象不会随着滚动。

(5)、center



与absolute一致,但偏移定位是以定位祖先元素的中心点为参考。盒子在其包含容器垂直水平居中。(CSS3)

(6)、page



与absolute一致。元素在分页媒体或者区域块内,元素的包含块始终是初始包含块,否则取决于每个absolute模式。(CSS3)

(7)、sticky



对象在常态时遵循常规流。它就像是relative和fixed的合体,当在屏幕中时按常规流排版,当卷动到屏幕外时则表现如fixed。该属性的表现是现实中你见到的吸附效果。(CSS3)

原文地址:https://www.cnblogs.com/wuxianqiang/p/9339022.html

时间: 2024-10-10 08:14:08

理解position定位的相关文章

position定位的解析与理解

每当我们在制作页面布局的时候总会遇到各种各样的让元素进行移动的时候,我们要不就是用margin属性来使元素进行移动,要不就是用position定位来进行,下面我就说下position定位的使用以及注意事项. 我们常用的position它有4种值,分别是  static    relative     absolute     fixed. static它是position的默认值: 给代码添加和不添加没有任何的不同,它是没有任何定位于效果的,也不会脱离文档流. relative是position

元素重叠及position定位的z-index顺序

多次在项目中遇到html页面元素的非期待重叠错误,多数还是position定位情况下z-index的问题.其实每次解决类似问题思路大致都是一样的,说到底还是对z-index的理解比较模糊,可以解决问题却不大了解其原因,导致重复出错......于是决定把重叠问题弄清下,把z-index理顺下. 经过一番查找对比实践理解,下面就从元素重叠的背景常识及可能原因说起,浅谈下position定位元素的z-index顺序.总结下我目前的理解,希望也能对遇到过类似问题有同样疑惑的你有一点帮助或启发. 元素位置

解析position定位

关于position定位(所有主流浏览器都支持 position 属性),大家会联想到relative和absolute,下面我就讲一下relative和absolute分别是相对于谁进行定位的? 在CSS布局中,Position发挥着非常重要的作用,很多容器的定位是用Position来完成,有四个可选值,它们分别是:static.absolute.fixed.relative,这里向大家描述一下它的使用. absolute:生成绝对定位的元素,相对于最近一级的定位不是static的父元素来进行

解析position定位及区别

position定位可分为:absolute:relative:fixed:static. absolute:生成绝对定位的元素,相对于最近一级的,定位不是static的父辈元素: relative:生成相对定位的元素,相对于其在普通流中的位置进行定位: fixed:生成绝对定位的元素,通常相对于浏览器窗口或frame进行定位: static:默认值,没有定位,元素出现在正常的流中. 相对定位的元素使得元素“浮”了起来,就是说z-index大于0的,应该是1,所以不论它怎么进行移动却总是覆盖普通

CSS定位:几种类型的position定位的元素

当人们刚接触布局的时候都比较倾向于使用定位的方式.因为定位的概念看起来好像比较容易掌握.表面上你确切地指定了一个块元素所处的位置那么它就会坐落于那里.可是定位比你刚看到的时候要稍微复杂一点.对于定位来说,有一些东西会绊倒新手,所以在它成为你的惯用技巧前你需要掌握它们. 一旦你更深入地了解了它是怎么运作的,你就能够做出一些更棒的事情来. CSS盒模型和定位的类型 为了搞清楚定位首先你得了解CSS盒模型.在上一句中的链接是我写在InstantShift 中的一篇关于盒模型的文章.我在那篇文章做了详细

彻底理解position与anchorPoint

引言 相信初接触到CALayer的人都会遇到以下几个问题: 为什么修改anchorPoint会移动layer的位置? CALayer的position点是哪一点呢? anchorPoint与position有什么关系? 我也迷惑过,找过网上的教程,大部分都是复制粘贴的,有些是翻译的文章但很有问题,看得似懂非懂,还是自己写代码彻底弄懂了,做点笔记吧. 每一个UIView内部都默认关联着一个CALayer, UIView有frame.bounds和center三个属性,CALayer也有类似的属性,

position定位——让人又爱又恨的属性

关于css中的position这个属性,在使用的时候,有时很强大,有时又让人很无奈. 强大的时候,对于div中的一些小物件不方便使用margin或者padding的时候,给与position:absolute;再配备left.right.top和bottom,基本上就是想放哪里放哪里了. 让人无奈的时候,就是我们一旦滥用了position这个定位属性,就会让自己的布局飞的满天是,又因为z-index没有设定好,基本上,整体的布局就会让你手足无措,找原因的话,又非常麻烦,最后,恐怕只能推倒重做了.

深入理解CSS定位中的偏移

× 目录 [1]定位 [2]包含块 [3]偏移属性[4]绝对定位[5]格式化 [6]auto 前面的话 CSS有三种基本的定位机制:普通流.浮动和绝对定位.利用定位,可以准确地定义元素框相对于其正常位置应该出现的位置,或者相对于父元素.另一个元素甚至浏览器窗口本身的位置.但元素究竟如何定位,定位到什么位置,主要依靠top/right/bottom/left这四个偏移属性.本文就定位中的偏移做详细介绍. position定位 值: static | relative | absolute | fi

归纳篇(一)CSS的position定位和float浮动

近期会更新一系列博客,对基础知识再度做个巩固和梳理. 一.position定位 (一):position的属性 1.absolute:生成绝对定位的元素,相对于最近一级定位不是static的父元素来进行定位: 2.relative:生成相对定位的元素,相对于其所在普通的文档流位置进行定位: 3.static:默认值,没有定位,元素出现在正常的文档流中; 4.fixed:老IE不支持,和absolute一致,相对于窗口进行定位,当出现滚动条时,不随着滚动而滚动: 5.sticky:(CSS3)有兼