div相对定位和div绝对定位
<HTML>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=big5" />
<title>關於div相對定位和div絕對定位的說明實例</title>
<style>
body
{margin: 30px; font-size:9pt;}
.a, .b, .c, .d, .e
{
width: 100px;
height: 100px;
margin: 5 auto;
color: #fff;
background: #000;
}
.aa, .bb, .cc, .dd, .ee
{
left: 10px;
width: 10px;
height: 10px;
overflow: hidden;
background: #F90;
}
.b, .d, .e
{position: relative;}
.cc, .dd, .ee
{position: absolute;}
</style>
</head>
<body>
<div class="a">
<div class="aa"></div>
A:均不設置postion,一般嵌套關係
</div>
<div class="b">
<div class="bb"></div>
B:僅外div設置relative,一般嵌套關係
</div>
<div class="c">
<div class="cc"></div>
C:僅內div設置absolute,文檔中為嵌套關係,頁面中內div浮起[非float],相對於頁面定位,與外div無關。
</div>
<div class="d" style="background:#ff0000">
<div class="dd" ></div>
D:外div設置relative,內div設置absolute,內div浮起來並相對於外div定位
</div>
<div class="d" style="background:#ff0000">
<div class="dd" style="position:relative"></div>
D:外div設置relative,內div設置relative,內div浮起來並相對於外div定位
</div>
<div class="e">
<div class="ee" style="left: -10px;"></div>
E:這個是說明邊界問題。-10 != 反向10px間距
</div>
</body>
</html>
A:均不設置postion,一般嵌套關係
B:僅外div設置relative,一般嵌套關係
C:僅內div設置absolute,文檔中為嵌套關係,頁面中內div浮起[非float],相對於頁面定位,與外div無關。
D:外div設置relative,內div設置absolute,內div浮起來並相對於外div定位
D:外div設置relative,內div設置relative,內div浮起來並相對於外div定位
E:這個是說明邊界問題。-10 != 反向10px間距
相对定位:是指元素在相对于文档布局的原始位置上进行偏移;
绝对定位:是指元素在原始的页面分离任意的定位.
CSS提供的定位属性有9个: position(位置属性) left(横坐标属性) top(纵坐标属性) width(宽度属性) height(高度属性)
clip(剪切属性) overflow(越界属性) z-index(Z轴位置属性) visibility(可见属性)
■位置属性position:
取值: absolute | relative | static
默认值: static
应用范围: 所有元素
用于指定对象元素的定位方式,ABSOLUTE为绝对定位方式,RELATIVE为相对定位方式,STATIC为静态方式,需要定位时必须选择前两种,
■横坐标属性:LEFT
取值: 数值 | 百分比 | AUTO
默认值:AUTO
应用范围:需要进行定位的元素(位置属性取值为ABSOLUTE或RELATIVE的元素)
百分比:相对于上级元素的宽度,如上级元素的宽度为AUTO,则百分比定位没有意义
用于指定对象元素的位置,是横坐标值
■纵坐标属性: TOP
取值和LEFT相同,只不过是其纵坐标的值
■宽度属性:WIDTH
取值和LEFT相同,指定对象元素所占的宽度
■高度属性: HEIGHT
不用说了
■越界属性:OVERFLOW
取值: visible | hidden | scroll auto
默认auto
应用范围:需要进行绝对定位的元素(只取值为ABSOLUTE)
用于指定对象元素中的内容超出容器范围的处理方式,
VISIBLE:表示容器范围随内容扩大,通常优先扩大容器的高度;
HIDDEN:容器范围不变,超出部分不可见
SCROLL:容器范围不变,但提供两个滚动条
AUTO:容器范围不变,只提供横向的滚动条
■Z轴位置属性:Z-INDEX
取值: 整数 |AUTO
默认auto
应用范围:需要进行定位的元素(位置属性取值为ABSOLUTE或RELATIVE的元素)
用于指定对象元素的叠放的次序,如两个定位后的元素有重叠部分,按次值决定叠放次序,值大的放在上面,AUTO取值为 0,若都设AUTO则按定义的顺序从下向上叠放
■可见属性:visibility
取值:visible | inherit | hidden
默认inherit
应用范围: 所有元素
用于指定对象元素是否显示.VISIBLE为显示 , HIDDEN为不显示 , INHERIT为继承上级元素的可见属性
■剪切属性:clip
晕,不明白,,请指教
举个例子:
<html>
<head>
<style type="text/css">
.css{position:absolute;
width:200pt;
height:200pt;
top:10pt;
left:10pt;
overflow:hidden;
z-index:3;
visibility:visible;
border:1px solid red
}
</style>
</head>
<body>
<div class="css"></div>
</body>
</html>
绝对定位的坐标原点为上级元素的原点.与上级元素有关
相对定位的坐标原点为本身偏移前位置的原点,与上级元素无关.