当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > Div CSS absolute与relative的区别小结

CSS样式表
CSS教程之css选择器 、属性、值
CSS的color颜色使用说明
firefox css自动换行的实现方法
css支持标准的图片垂直居中
css+table 1px边框单元格
css之使table也能overflow:hidden
几个常用经典的css技巧
css 跨浏览器实现float:center
css浏览器不兼容原因分析及解决办法
iframe transparent透明背景方法
有衬线字体与无衬线字体比较
div+css在思路和流程上实现结构与表现的分离分析
css教程 css和document
层盖住下拉列表框问题解决方案
css样式之区分input是按钮还是文本框的方法
CSS expression控制图片自动缩放效果代码[兼容 IE,Firefox]
谈谈网页设计中的字体应用Font Set
XHTML标签的自关闭写法的坏处分析
顶级经典常用的CSS属性收集整理
10条影响CSS渲染速度的写法与使用建议

CSS样式表 中的 Div CSS absolute与relative的区别小结


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 139 ::
收藏到网摘: n/a

Div + CSS 进行网页布局,适当地运用 absolute 与 relative,能给布局带来意想不到的效果和方便,达到事半功倍…本文介绍了关于 absolute 与 relative 的运用。 详细讲解两者的关系,需要配合例子,请先看例子:
以下是引用片段:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>Div + CSS Example, Wayhome's Blog</title>
<style type="text/css">
<!--
body,td,th{font-family:Verdana;font-size:9px;}
-->
</style></head>
<body>
<div style="position:absolute; top:5px; right:20px; width:200px; height:180px; background:#00FF00;">
 position: absolute;<br />
 top: 5px;<br />
 right: 20px;<br />
 <div style="position:absolute; left:20px; bottom:10px; width:100px; height:100px; background:#00FFFF;">
position: absolute;<br />
left: 20px;<br />
bottom: 10px;<br />
</div>
</div>
<div style="position:absolute; top:5px; left:5px; width:100px; height:100px; background:#00FF00;">
 position: absolute;<br />
 top: 5px;<br />
 left: 5px;<br />
</div>
<div style="position:relative; left:150px; width:300px; height:50px; background:#FF9933;">
 position: relative;<br />
 left: 150px;<br />
 <br />
 width: 300px; height: 50px; <br />
</div>
<div style="text-align:center; background:#ccc;">
  <div style="margin:0 auto; width:600px; background:#FF66CC; text-align:left;">
  <p>1</p>
  <p>2</p>
  <p>3</p>
  <p>4</p>
  <p>5</p>
  <div style="padding:20px 0 0 20px; background:#FFFF00;">
    padding: 20px 0 0 20px;
  <div style="position:absolute; width:100px; height:100px; background:#FF0000;">position: <span style="color:#fff; ">absolute</span>;</div>
  <div style="position:relative; left:200px; width:500px; height:300px; background:#FF9933;">
    position: <span style="color:blue;">relative</span>;<br />
   left: 200px;<br />
   <br />
   width: 300px;<br />
   height: 300px;<br />
   <div style="position:absolute; top:20px; right:20px; width:100px; height:100px; background:#00FFFF;">
    position: absolute;<br />
    top: 20px;<br />
    right: 20px;<br /></div>
   <div style="position:absolute; bottom:20px; left:20px; width:100px; height:100px; background:#00FFFF;">
    position: absolute;<br />
  bottom: 20px;<br />
  left: 20px;<br />
  </div>
  </div>
  </div>
 
</div>
</div>
</body>
</html>

  absolute:绝对定位,CSS 写法“ position: absolute; ”,它的定位分两种情况,如下:
  1. 没有设定 Top、Right、Bottom、Left 的情况,默认依据父级的“内容区域原始点”为原始点,上面例子红色部分(父级黄色区域有 Padding 属性,“坐标原始点”和“内容区域原始点”不一样)。
  2. 有设定 Top、Right、Bottom、Left 的情况,这里又分了两种情况如下:
  (1). 父级没 position 属性,浏览器左上角(即 Body)为“坐标原始点”进行定位,位置由 Top、Right、Bottom、Left 属性决定,上面例子绿色部分。
  (2). 父级有 position 属性,父级的“坐标原始点”为原始点,上面例子浅蓝色部分。
  relative:相对定位,CSS 写法“ position: relative; ”,参照父级的“内容区域原始点”为原始点,无父级则以 Body 的“内容区域原始点”为原始点,位置由 Top、Right、Bottom、Left 属性决定,且有“撑开或占据高度”的作用,上面例子橙色部分。
  通过上面的例子和讲解,相信熟练运用 absolute 与 relative 并不是一件很困难的事,我们周围有不少关于 absolute 与 relative 的好例子,比如“网易163免费邮”首页(http://mail.163.com),里面就有大量的运用。
  例子代码在 IE5.5、IE6、FF1.5、Opera9 测试通过。