大家知道css的position absolute默认是根据document来设置的,比如position:absolute
后设置left:0;top:0
这时候元素会显示到页面的左上角。
有时候我们需要在父元素的容器内设置相对的绝对位置。比如下面本站视频教程页面的效果图.
上图中的视频图标是一个绝对位置,它是相对于父元素的。
要做到这一点需要把父元素的position属性设置为relative,设置为relative之后不设置left和top属性,这时候父元素虽然是relative的,但是还是在原来位置。 然后把子元素的位置position设置为absolute的,并设置其left,top,right,bottom属性,这样就是相对于父元素的绝对位置了。
如下html示例代码,将鼠标放置代码区域右上角会有试试效果的提示,点击可以看到实际效果:
<!doctype html>
<html>
<style type="text/css">
#father {
position: relative;
width:600px;
margin:auto;
height:400px;
border:1px solid red;
}
#son1 {
position: absolute;
top: 0;
background:#f0f0f0;
}
#son2 {
position: absolute;
bottom: 0;
background:blue;
}
</style>
<body>
<div id="father">
<div id="son1">I am son1</div>
<div id="son2">I am son2</div>
</div>
</body>
</html>
网友评论