position:relative与float的区别
postion:relative是子块级元素面向父级元素的相对定位,定位关键字使用left/right/top/bottom。兄弟块元素之间相对进行定位,但是position移动后,原位置依然保留。而且随后的兄弟块元素定位基于被移走前的位置。
float:right/left是子块级元素流集合面向父级元素的定位,定位的关键词使用margin/padding。兄弟块元素之间进行相对的定位均基于移动后的新位置进行重新渲染,可以重叠,原位置被清空。
二者之中最大的差别就是位置保留。
float定位:
<style>
*{border:1px solid #eee;}
body{
border-color:#09f;
}
ul{list-style:none;}
li{float:left;}
#li1{width:200px;height:200px;border-color:red;}
#li2{width:200px;height:150px;border-color:green;}
#li3{width:200px;height:100px;border-color:blue;}
</style>
<ul id=#id>
<li id=li1>li1</li>
<li id=li2>li2</li>
<li id=li3>li3</li>
</ul>
position:relative定位:
<style>
*{border:1px solid #eee;}
body{
border-color:#09f;
}
ul{list-style:none;width:800px;height:400px;margin:0 auto; border-color:black;}
li{position:relative;}
#li1{width:200px;height:200px;border-color:red;top:20px;}
#li2{width:200px;height:150px;border-color:green;}
#li3{width:200px;height:100px;border-color:blue;}
</style>
<ul id=#id>
<li id=li1>li1</li>
<li id=li2>li2</li>
<li id=li3>li3</li>
</ul>
分别运行,查看一下运行效果。
参考:标准之路(http://www.aa25.cn/div_css/704.shtml)
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步