如果想为元素设置层模型中的相对定位,需要设置position:relative(表示相对定位),它通过left、right、top、bottom属性确定元素在正常文档流中的偏移位置。相对定位完成的过程是首先按static(float)方式生成一个元素(并且元素像层一样浮动了起来),然后相对于以前的位置移动,移动的方向和幅度由left、right、top、bottom属性确定,偏移前的位置保留不动。
如下代码实现相对于以前位置向下移动50px,向右移动100px;
~~~
#div1{
width:200px;
height:200px;
border:2px red solid;
position:relative;
left:100px;
top:50px;
}
<div id="div1"></div>
~~~
效果图:
![](https://box.kancloud.cn/2016-07-05_577b595786021.jpg)
什么叫做“偏移前的位置保留不动”呢?
大家可以做一个实验,在右侧代码编辑器的19行div标签的后面加入一个span标签,在标并在span标签中写入一些文字。如下代码:
~~~
<body>
<div id="div1"></div><span>偏移前的位置还保留不动,覆盖不了前面的div没有偏移前的位置</span>
</body>
~~~
效果图:
![](https://box.kancloud.cn/2016-07-05_577b5957a3b2b.jpg)
从效果图中可以明显的看出,虽然div元素相对于以前的位置产生了偏移,但是div元素以前的位置还是保留着,所以后面的span元素是显示在了div元素以前位置的后面。
- HTML+CSS基础
- HTML
- Html和CSS的关系
- 认识html文件基本结构
- 了解HTML的代码注释
- 语义化,让你的网页更好的被搜索引擎理解
- 加入强调语气,使用<strong>和<em>标签
- <q>标签,短文本引用
- <hr>标签,添加水平横线
- <address>标签,为网页加入地址信息
- caption标签,为表格添加标题和摘要
- CSS
- CCS子选择器
- CSS包含(后代)选择器
- CSS通用选择器
- CSS伪类选择符
- CSS分组选择符
- CSS继承
- CSS特殊性
- CSS层叠
- CSS重要性
- 段落排版--中文字间距、字母间距
- 元素分类--块级元素
- 元素分类--内联元素
- 元素分类--内联块状元素
- 什么是层模型?
- 层模型--绝对定位
- 层模型--相对定位
- 层模型--固定定位
- Relative与Absolute组合使用