html - 为什么上面的div向左浮动时div元素不向上移动?

标签 html css web css-float

我一直在研究 CSS 中的 float 属性。

这是我的 html 代码:

.left {
  float: left;
  text-align: center;
  width: 25%;
}
.normal {
  text-align: center;
  width: 25%;
}
<div class="left">
  <img src="Icon.png">
  <h1>hi my name is left</h1> 
  <p>hi im a paragraph of abcd. ghjtyj yttyrkutk ukuykyilt uk</p>
</div>
<div class="normal">
  <img src="Icon.png">
  <h1>hi my name is normal</h1> 
  <p>hi im a paragraph of abcd. ghjtyj yttyrkutk ukuykyilt uk</p>
</div>

我想知道为什么我的 div使用 div 类 normal 不会向上移动还剩几节课?

我问这个问题是因为如果我写一个

<p>something</p>

在我的 div 之后类(class)留下了p tag的内容向上 移动,但这不会发生在 div 上.. 我想知道为什么会发生这种情况?

最佳答案

第一个 div 的宽度为 25%,因此它在水平方向上占据了可用空间的 25%。
第二个 div 也是 25% 宽;因此,第一个 div 占用了第二个 div 占用的所有空间。右边已经没有更多空间了!

解决方案:让第二个 div 宽度不是 25%,而是 50%(比第一个多 25%)。

.left {
  float: left;
  text-align: center;
  width: 25%;
}
.normal {
  text-align: center;
  width: 50%;
}
<div class="left">
  <img src="Icon.png">
  <h1>hi my name is left</h1> 
  <p>hi im a paragraph of abcd. ghjtyj yttyrkutk ukuykyilt uk</p>
</div>
<div class="normal">
  <img src="Icon.png">
  <h1>hi my name is normal</h1> 
  <p>hi im a paragraph of abcd. ghjtyj yttyrkutk ukuykyilt uk</p>
</div>

关于html - 为什么上面的div向左浮动时div元素不向上移动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41977968/

相关文章:

css - 为什么我的 Div 标签被推到左边几个像素?

html - 使链接调用目标文档上的特定 CSS 样式表

css3 多背景图像简写不起作用

css - float 属性设置为左侧的 div 不沿着前面的 div float

java - 使用 Java 源代码抓取文本 - 没有评论文本

android - 谁在 mvp android 中调用 db 查询和 http get

jquery - 过滤器反转在 IE (Internet Explorer) 中不起作用

javascript - 基于文本框输入的二维码显示

html - 表内的加载器 <td>

无需 Flash 即可在网络上录制音频