解决子元素浮动到父元素的父元素的问题?
急求!子元素设置了float:left,为什么是浮动到父元素的父元素(part1)上,而不是浮动到父元素(box1)上?想让这个子元素和学院新闻同行应该怎么办?这是那个子元素
.box1 span a{
width: 38px;
height: 25px;
display:line-block;
float: right;
}
这是那个子元素这是整体:
回复
1个回答
test
2024-06-23
看起来像是初学者,描述的问题阅读起来也比较吃力。
简单来说就是因为:
- 你的
.box1
元素下有两个元素p
标签和span
标签。 p
是块级元素,所以它会占满整行,导致让span
标签换行到下一行展示。- 因为已经换行了,所以你浮动的时候也只是在本行向右浮动。
- 另外你的
.box
元素的高度你设置为了固定的35px
,文字行高也设置为了34px
。 - 所以
.box
“看起来” 会在.part1
元素上,但其实它还是在.box1
元素上的只是看起来脱离了.box1
元素。
所以简单的调整就是把你的 span
标签移动到 p
标签之前就可以了
<div class="content">
<div class="part1">
<div class="box1">
<span>
<a href="#">
<img src="##" />
</a>
</span>
<p>学院标签</p>
</div>
</div>
<div class="part2">2</div>
</div>
回复
适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容