关于position的用法

昨天发现的一个问题:

因为做的是移动端前端开发,使用的apicloud技术,发现普通的打开一个frame,出现一个问题,frame是可以滚动的,当然这个可以设置,但是我的内容是不确定的,所以必须要求他可以滚动,但是有个需求是将两个按钮设置到frame的底部。

我考虑过使用绝对布局,但是使用后发现不起作用,后来请教别人发现了一个从未用过但是见过的属性,就是position: fixed;width: 100%;bottom: 20px;

后来了解了他的用法知道了他是相对于body的。

常用的position的值是relative和absolute,自己也是懵懂的,后来百度也试过很多,现在谢谢自己现在的理解,以后用的多了,再补充进来。

先来个最简单的例子

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0" />
        <title>云API</title>
        <link rel="stylesheet" type="text/css" href="../css/api.css" />
        <link rel="stylesheet" type="text/css" href="../css/style.css" />
        <link rel="stylesheet" type="text/css" href="../css/aui.2.0.css" />
        <style>
            .div1{
                position: relative;
                height: 100px;
                width: 100px;
                background-color: #039BE5;
                margin-left: 80px;
                margin-top: 60px;
            }
            .div2{
                position: absolute;
                width: 30px;
                height: 30px;
                background-color: darkcyan;
                top: 20px;
                left: 20px;
            }
            .div3{
                position: absolute;
                width: 80px;
                height: 80px;
                opacity: 0.5;
                background-color: hotpink;
                top: 10px;
                left: 10px;
            }        

        .div4{
position: relative;
width: 80px;
height: 80px;
opacity: 0.8;
background-color: aquamarine;
top: 10px;
left: 10px;
}

        </style>
    </head>
    <body>
        <div class="div1">
            div1
            <div class="div2">
                div2
            </div>
        </div>

        <div class="div3">
                div3
        </div>
              

<div class="div4">
我是div4
</div>

    </body>
</html>

解释:

以上div3 是单独的元素,他的直接父元素是body,他的绝对定位就是相对body的,

div2 的直接父元素是div1,这种情况下,只有把div1设置为relative,div2 的absolute 才会是相对于div1的,也就是说,div2会跟着div1动。

也证明了div一旦设置为absolute,他就会脱离文档流,即和普通的div不在同一个平面[我觉得可以这样理解]。所以可以覆盖别的div。

时间: 2024-10-15 03:08:06

关于position的用法的相关文章

position:sticky用法

用户的屏幕越来越大,而页面太宽的话会不宜阅读,所以绝大部分网站的主体宽度和之前相比没有太大的变化,于是浏览器中就有越来越多的空白区域,所以你可能注意到很多网站开始在滚动的时候让一部分内容保持可见,比如,侧边栏的部分区域.position:sticky为此而生. position:sticky用法 position:sticky是一个新的css3属性,它的表现类似position:relative和position:fixed的合体,在目标区域在屏幕中可见时,它的行为就像position:rela

JQ之 offset 和 position 的用法与区别

offset:获取元素相对于文档(document)的当前坐标 注意 使用offset()方法不管该元素如何定位,也不管其父元素如何定位,都是获取的该元素相对于当前视口的偏移. postion : 获取元素相对父元素的偏移 注意: 1,使用position()方法时事实上是把该元素当绝对定位来处理,获取的是该元素相当于最近的一个拥有绝对或者相对定位的父元素的偏移位置. 2,使用position()方法时如果其所有的父元素都为默认定位(static)方式,则其处理方式和offset()一样,是当前

CSS中Position 的用法详解。

记得一年前,到一家公司面试的时候,问我position有哪几个属性,我憋半天才回答出2个,大家估计都清楚,就是我们经常用到的2个(relative,absolute). 最近又用到了好多,深入研究了下. 一.语法: position:static | relative | absolute | fixed 取值: static :默认值,无特殊定位,对象遵循正常文档流.top,right,bottom,left等属性不会被应用,默认值. relative:相对定位,对象遵循正常文档流,但将依据t

关于jQuery中的 offset() 和 position() 的用法

---恢复内容开始--- 在jQuery中有两个获取元素位置的方法offset()和position().position()方法是在1.2.6版本之后加入的,为什么要引入这个方法呢?这两个方法之间有什么异同?使用的时候应该注意哪些问题?什么时候使用offset(),什么时候又使用position()呢? 先看看API对这这两个方法的定义: offset(): 获取匹配元素在当前视口的相对偏移. 返回的对象包含两个整形属性:top 和 left.此方法只对可见元素有效. position():

position的用法

Position定义: position 属性规定元素的定位类型. 这个属性定义建立元素布局所用的定位机制.任何元素都可以定位,不过绝对或固定元素会生成一个块级框,而不论该元素本身是什么类型.相对定位元素会相对于它在正常流中的默认位置偏移. 在介绍postion值之前先给大家介绍一下 z-index的使用,它可被用于将在一个元素放置于另一元素之后,决定了一个HTML元素层叠级别.元素层叠级别是相对于元素在Z轴上(X轴与Y轴的平面相垂直相的平面)的位置而言.一个更高的Z-index值意味着这个元素

position sticky 用法

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <style type="text/css"> *{ margin: 0; padding: 0; } ul{ width: 100%; height: 100%; } ul>li{ height: 400px; width: 100%; l

CSS3的position:sticky介绍

用户的屏幕越来越大,而页面太宽的话会不宜阅读,所以绝大部分网站的主体宽度和之前相比没有太大的变化,于是浏览器中就有越来越多的空白区域,所以你可能注意到很多网站开始在滚动的时候让一部分内容保持可见,比如,侧边栏的部分区域.position:sticky为此而生. position:sticky用法 position:sticky是一个新的css3属性,它的表现类似position:relative和position:fixed的合体,在目标区域在屏幕中可见时,它的行为就像position:rela

position:sticky布局

用户的屏幕越来越大,而页面太宽的话会不宜阅读,所以绝大部分网站的主体宽度和之前相比没有太大的变化,于是浏览器中就有越来越多的空白区域,所以你可能注意到很多网站开始在滚动的时候让一部分内容保持可见,比如,侧边栏的部分区域.position:sticky为此而生. position:sticky用法   position:sticky 是一个新的css3属性,它的表现类似 position:relative 和 position:fixed 的合体,在目标区域在屏幕中可见时,它的行为就像 posit

CSS中TRBL和position关系

转自http://andymao.com/ 的部分: Absolute,CSS中的写法是:position:absolute; 他的意思是绝对定位,脱离了文本流(即在文档中已经不占据位置),他是参照浏览器的左上角,配合TOP.RIGHT.BOTTOM.LEFT(下面简称TRBL)进行定位,在没有设定TRBL,默认依据父级的做标原始点为原始点.如果设定TRBL并且父级没有设定position属性,那么当前的absolute则以浏览器左上角为原始点进行定位,位置将由TRBL决定. 网页居中的话用Ab