css positive

 1、absolute(绝对定位)

     absolute是生成绝对定位的元素,脱离了文本流(即在文档中已经不占据位置),参照浏览器的左上角通过top,right,bottom,left(简称TRBL) 定位。可以选取具有定位的父级对象(下文将说到relative与absolute的结合使用)或者body坐标原点进行定位,也可以通过z-index进行层次分级。absolute在没有设定TRBL值时是根据父级对象的坐标作为始点的,当设定TRBL值后则根据浏览器的左上角作为原始点。

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
html,body,div{
margin:0; 
padding:0; 
}
.center{
margin:30px;
padding:5px;
border:#999999 solid 10px;
width:400px;
height:300px;
}
.div1{
width:40px;
height:40px;
background:#0099FF;
position:absolute;
left:5px;
top:0px;
}
/* comment-1
.div1{
width:40px;
height:40px;
background:#0099FF;
position:absolute;
}*/

/* comment-2
.div1{
width:200px;
height:150px;
background:#0099FF;
position:relative;
top:-20px;
left:0px;
}*/
.div2{
width:100px;
height:100px;
color:#fff;
background:#FF0000;
}
</style>
</head>
<body>
  <div class="center">
    <div class="div1"></div>
    <div class="div2"></div>
  </div>
</body>
</html>

具体案例如下:

 这是设定TRBL之后的效果(设置TRBL以浏览器左上角为原点)。

 将div1修改为comment-1的样式则结果如下:

 当没有设置TRBL时(没有设置TRBL是以父级对象的坐标为原点)

 

 2、relative(相对定位)

     relative是相对的意思,顾名思义就是相对于元素本身在文档中应该出现的位置来移动这个元素,可以通过TRBL来移动元素的位置,实际上该元素依然占据文档中原有的位置,只是视觉上相对原来的位置有移动。

 将div1修改为comment-2,则显示如下:

div1网上偏移了20px,但原来的空间仍然存在,不会脱离文档。

3、relative与absolute的结合使用

在网页设计时经常会用到浮动来对页面进行布局,但是浮动所带来的不确定因素却很多(例如:IE浏览器的兼容问题)。相对来说,在有些布局中定位使用会更加简单、快捷、兼容性更好(relative与absolute相结合来使用)

给父元素设置relative定位,那么可以看到里面所有的子元素在设置absolute后都会相对父元素进行定位,而不是相对body定位。

这里就不给例子了

posted @ 2016-02-20 15:22  牧 天  阅读(817)  评论(0)    收藏  举报