问答详情
源自:13-6 万事无绝对 -层模型之绝对定位

关于css的层模型中的绝对定位??

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

其中,【然后使用left、right、top、bottom属性相对于其最接近的一个具有定位属性的父包含块进行绝对定位。】,,,这句话,“具有定位属性的父包含块”,,,那么,在设置子一代的绝对定位,需要为父包含块设置定位吗???完整的是怎么设置的??

提问者:学习小高 2017-01-15 08:53

个回答

  • 时光纪0
    2017-02-22 23:05:13

    不一定需要,看需求,如果父块不用设置位置,那就不用

  • 天夏不舞
    2017-01-15 10:51:06

    比如div1里有个子div2,那么需要给div1设置position:relative,div2设置position:absolute. 之后div2的位置就会以div1为参照定位了。

    至于left、right、top、bottom属性,意思是相对父DIV对应方向的距离,具体可以复制修改以下代码理解。

    <!DOCTYPE HTML>
    <html>
    <head>
    <meta charset="utf-8">
    <title>绝对定位</title>
    <style>
    	#div1 {
    		position:relative; /* 设置相对定位 */
    		width:200px;
    		height:200px;
    		border:2px solid black;
    	}
    	#div2 {
    		position:absolute;  /* 设置绝对定位 */
    		width:100px;
    		height:100px;
    		border:1px dashed red;
    		right:0;
    		top:50px;
    	}
    </style>
    </head>
    <body>
        <div id="div1">父DIV
    		<div id="div2">子DIV</div>
    	</div>
    </body>
    </html>

    http://img.mukewang.com/587ae2e40001a4b002080209.jpg