而相对定位就是相对于元素本来的位置再进行平移后获得新的位置,也就是说这个新位置是要根据原来的位置来定的,比如 left:10pxtop:-20px 就是把元素往右移动10像素,往上移动20像素。
打个比方,在地球上我们用经纬度来确定一个点的位置就是绝对定位,而类似“东南方向15公里”这样的就是相对定位了。
绝对定位(absolute)意思是:将被赋予此定位方法的对象从文档流中拖出,使用left,right,top, bottom等属性相对于其最接近的一个最有定位设置的父级对象进行绝对定位,如果对象的父级没有设置定位属性,即还是遵循HTML定位规则的。
相对定位(relative)意思:对象不可层叠,依据left,right,top,bottom等属性在正常文档流中偏移自身位置。同样可以用z-index分层设计。
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。
CSS 能够对网页中元素位置的排版进行像素级精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力。
CSS绝对定位属性:position (属性规定元素的定位类型)
绝对定位示例:
h2{position :fixed}下面是position属性值
1、absolute:生成绝对定位的元素,相对于 static 定位以外的第一个父元素进行定位。 元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
2、fixed:生成绝对定位的元素,相对于浏览器窗口进行定位。 元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
3、relative:生成相对定位的元素,相对于其正常位置进行定位。 因此,"left:20" 会向元素的 LEFT 位置添加 20 像素。
4、static:默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left, right 或者 z-index 声明)。
5、inherit:规定应该从父元素继承 position 属性的值。
小案例:
<html><head>
<style type="text/css">
h2.pos_abs
{
position:absolute
left:100px
top:150px
}
</style>
</head>
<body>
<h2 class="pos_abs">这是带有绝对定位的标题(百度知道)</h2>
<p>通过绝对定位,元素可以放置到页面上的任何位置。下面的标题距离页面左侧 100px,距离页面顶部 150px。</p>
</body>
</html>
案例截图: