CSS浮动为什么不会遮盖同级元素

恋喵大鲤鱼
博客专家认证
2015-09-17 09:22:05
html+CSS源码:
 <html>
<head>
<style type="text/css">
img
{
border:solid 1px green;
display:block;
}

#id1{
float:left;
}

div{
border:solid 2px blue;
}

p{
border:solid 1px red;
}
</style>
</head>

<body>
<div>
<img src="/i/eg_cute.gif" />
<img id="id1" src="/i/eg_cute.gif" />
<p>
This is some text. This is some text. This is some text.
This is some text. This is some text. This is some text.
</p>
</div>
</body>
</html>

效果如下如:


问题:
W3CSchool中讲解CSS定位,浮动那一节中,明确说对框1进行向左浮动时会遮住框2,原因是浮动后,元素脱离了文档流,不占据空间。为什么我对两张图中的之一进行浮动时,不会遮住另一张图呢???浏览器是IE8核心的360浏览器。
我的理解错在了哪里?
...全文
376 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
恋喵大鲤鱼 2016-04-25
  • 打赏
  • 举报
回复
我差不多已经弄明白了,对于元素来说,这个是W3Cschool讲的不够明确,具体见我的blog:http://blog.csdn.net/k346k346/article/details/48530467
zpjshiwo77 2015-09-18
  • 打赏
  • 举报
回复
引用 4 楼 hezy94 的回复:
试了一下,img就不行,但是你要是单单是div的话,就能出现你说的那个样子,框1遮住框2
并不是img和div的问题好么,你试验的肯定不对(我估计你设置的是第一个DIV是浮动的,第二个不浮动)。
hezy94 2015-09-18
  • 打赏
  • 举报
回复
试了一下,img就不行,但是你要是单单是div的话,就能出现你说的那个样子,框1遮住框2
DaveLeeCN 2015-09-18
  • 打赏
  • 举报
回复
会遮盖的浮动不是float,而是position:absolute;这个属性会使元素脱离文档流,相当于悬浮在页面上
zpjshiwo77 2015-09-18
  • 打赏
  • 举报
回复

好好理解一下吧。再给你一个地址:
http://www.w3school.com.cn/css/css_positioning_floating.asp
恋喵大鲤鱼 2015-09-17
  • 打赏
  • 举报
回复
测试地址见W3CSchool,连接:http://www.w3school.com.cn/tiy/t.asp?f=csse_float

61,115

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧