CSS层模型的应用

1、绝对定位(position: absolute) :如果想为元素设置层模型中的绝对定位,需要设置position:absolute(表示绝对定位),这条语句的作用将元素从文档流中拖出来(即不依赖与前面的一个DIV的位置可以独立设置位置),然后使用left、right、top、bottom属性相对于其具有定位属性(即top\right\bottom\left定位属的)的父包含块进行绝对定位。如果不存在这样的包含块,则相对于body元素,即相对于浏览器窗口。

2、相对定位(position: relative) :如果想为元素设置层模型中的相对定位,需要设置position:relative(表示相对定位),它通过left、right、top、bottom属性确定元素在正常文档流中的偏移位置。相对定位完成的过程是首先按static(float)方式生成一个元素(并且元素像层一样浮动了起来),然后相对于以前的位置移动,即默认的位置【0,0】,移动的方向和幅度由left、right、top、bottom属性确定,偏移前的位置保留不动。

3、固定定位(position: fixed):表示固定定位,与absolute定位类型类似,但它的相对移动的坐标是视图(屏幕内的网页窗口)本身。由于视图本身是固定的,它不会随浏览器窗口的滚动条滚动而变化,除非你在屏幕中移动浏览器窗口的屏幕位置,或改变浏览器窗口的显示大小,因此固定定位的元素会始终位于浏览器窗口内视图的某个位置,不会受文档流动影响,这与background-attachment:fixed?属性功能相同。

4、被关联的绝对定位:主要是release 和absoute 之前的对应关系 。上面说的是单一的绝对定位,而在实际的应用中我们常常会需要用到一种特别的形式。即希望定位元素要有绝对定位的特性,但是又希望绝对定位的坐标原点可以固定在网页中的某一个点,当这个点被移动时绝对位定元素能保证相对于这个原坐标的相对位置。也就是说需要这个绝对定位要跟着网页移动,而并且是因定在网页的某一个固定位置。通常当网页是居中形式的时候这种效果就会显得特别的重要。要实现这种效果基本方式就是为这个绝对定位的父级设置为相对定位或是绝对定位。那么绝对定位的坐标就会以父级为坐标起始点。
虽然是如此,但是这个坐标原点却并不是父级的坐标原点,这是一个很奇怪的坐标位置。我们看一下模型图示:

我们看到,这个图中父级为黑灰色区块,子级为青色区块。父级是相对定位,子级是绝对定位。子级设置了顶部位移50个像素,左倾位移50个像素。那么我们看,子级的坐标原点并不是从父级的坐标原点位移50个像素,而是从父级块的padding左上边缘点为坐标起始点(即A 点)。而父级这里如果要产生位置移动,或是浏览器窗口大小有所变动都不会影响到这个绝对定位元素与父级的相对定位元素之间的位置关系。这个子级也不用调整数值。

原文地址:https://www.cnblogs.com/mainbao/p/11063733.html

时间: 2024-08-24 21:00:22

CSS层模型的应用的相关文章

CSS层模型中的绝对定位 相对定位 固定定位

1.绝对定位:元素设置层模型中的绝对定位,需要设置position:absolute(表示绝对定位),这条语句的作用将元素从文档流中拖出来,然后使用left.right.top.bottom属性相对于其最接近的恶意个具有定位属性的父包含块进行绝对定位.如果不存在这么一个元素,则相对于body元素而言,也就是说相对浏览器而言. 2.相对定位:元素设置层模型中的相对定位,需要设置position:relative(表示相对定位),它通过left.right.top.bottom属性确定元素在正常文档

CSS层模型

参考:慕课网 点此可进 如何让html元素在网页中精确定位,就像图像软件PhotoShop中的图层一样可以对每个图层能够精确定位操作.CSS定义了一组定位(positioning)属性来支持层布局模型. 层模型有三种形式: 1.绝对定位(position: absolute) 2.相对定位(position: relative) 3.固定定位(position: fixed) 绝对定位 需要设置position:absolute(表示绝对定位),这条语句的作用将元素从文档流中拖出来,然后使用le

css模型之层模型

css层模型说的是position这个属性,它有四个常用值,分别是static.relative.absolute.fixed. 1.static:这个是元素的默认值,特点是页面会依照自左向右.自上向下的方向布局,并且设置top.right.bottom.left值是没有用的,并且设置z-index也是没有用的,不能进行特殊定位: 2.relative:相对定位,什么是相对?相对于谁?相对是 相对于自身 原本不设置此属性值时 应该在的位置,即默认的文档流应该在的位置.特点是,设置此属性值后该元素

CSS:3种基本的布局模型、层模型的三种形式

CSS包含3种基本的布局模型: 用英文概括为:Flow.Layer 和 Float.在网页中,元素有三种布局模型:1.流动模型(Flow)2.浮动模型 (Float)3.层模型(Layer) 流动布局模型具有2个比较典型的特征: 第一点,块状元素都会在所处的包含元素内自上而下按顺序垂直延伸分布,因为在默认状态下,块状元素的宽度都为100%.实际上,块状元素都会以行的形式占据位置.如右侧代码编辑器中三个块状元素标签(div,h1,p)宽度显示为100%. 第二点,在流动模型下,内联元素都会在所处的

CSS布局模型(流动模型、浮动模型、层模型)

在网页中,元素有三种布局模型: 1.流动模型(Flow) default,就是块级元素都自上而下的分布,宽度都为100%.内联元素都从左到右水平分布. 2.浮动模型 (Float) div.p.table.img 等元素都可以设置为浮动.两个 div 显示在一行的代码如下: div{ width:200px; height:400px; border:2px red solid; float:left; } 3.层模型(Layer) 层模型有三种形式: (1)绝对定位(position: abs

学习总结:CSS(一)块级与行级元素特性、盒模型、层模型、BUG与BFC、浮动模型

.displayTal { width: 100%; font-size: 13px } .displayTal1 { width: 30%; height: 30px; font-size: 13px; color: #009933 } .displayTal2 { width: 40%; height: 30px; font-size: 13px; color: #009933 } .displayTal3 { width: 30%; height: 30px; font-size: 13p

【css中的层模型】

层模型的三种形式:绝对定位,相对定位,固定定位 一.绝对定位:(position:absolute) 绝对定位就是将元素从文档中拖出来,然后使用left,right,bottom,top属性相对于其最接近的一个具有定位属性的父包含块进行定位,若不存在包含块,就像对于body元素定位,也就是浏览器窗口. 二.相对定位:(position:relative) 通过left,right,bottom,top属性来确定元素在正常文档流中的偏移位置,偏移后以前的位置保持不变 三.固定定位:(positio

布局模型 之 层模型(position的relative、absolute与fixed区别?)

css的布局模型分为流动模型(Flow).浮动模型(Float).层模型(Layer). 浮动模型(Float)和层模型(Layer)有什么显著区别?     浮动模型(Float):浮动是让某元素脱离文档流的限制,在浮动框之前和之后的非定位元素会当它不存在一样,可能沿着它的另一侧垂直流动:浮动的元素仍然会占据文档流的物理空间.关于浮动模型的详细说明请看另一篇文章的介绍.http://ycgit.blog.51cto.com/8590215/1958452 层模型(Layer):设置为层模型的元

什么是层模型?

什么是层布局模型?层布局模型就像是图像软件PhotoShop中非常流行的图层编辑功能一样,每个图层能够精确定位操作,但在网页设计领域,由于网页大小的活动性,层布局没能受到热捧. 但是在网页上局部使用层布局还是有其方便之处的.下面我们来学习一下html中的层布局. 如何让html元素在网页中精确定位,就像图像软件PhotoShop中的图层一样可以对每个图层能够精确定位操作.CSS定义了一组定位(positioning)属性来支持层布局模型. 层模型有三种形式: 1.绝对定位(position: a