gpt4 book ai didi

html - 为什么其中带有 p 标签的 html div 标签与带有 img 标签的标签位置不同?

转载 作者:行者123 更新时间:2023-11-28 01:35:54 24 4
gpt4 key购买 nike

我在 Codecademy.com 上工作时编写了以下代码。基本上我有一堆用 <div> 创建的圆形容器标签。所有的容器在空的时候都整齐地排成一排。当我在一些 <div> 中添加图像时s,它不影响间距。但是,当我在 <p> 中添加文本时<div> 之一内的标签容器它把整个容器撞了半英寸。 (注意:删除或添加更多 <br> 标签无济于事,将边距设置为 0 也无济于事。)

我的问题是:为什么会发生这种情况,我怎样才能阻止它发生?

因为我这样做是为了学习,所以我肯定更关心理解为什么会发生这种情况,而不是简单地快速解决问题。谢谢。

代码如下:

div {
display: inline-block;
margin-left: 5px;
border-radius: 100%;
height: 100px;
width: 100px;
border: 2px solid black;
}
.friend {
border: 2px dashed #008000;
}
.family {
border: 2px dashed #0000ff;
}
.enemy {
border: 2px dashed #ff0000;
}
#best_friend {
border: 4px solid #00c957;
}
#archnemesis {
border: 4px solid #cc0000;
}
img {
border-radius: 100%;
height: 100px;
width: 100px;
}
div p {
text-align: center;
border: 0;
padding: 0;
}
<!DOCTYPE html>
<html>

<head>
<link type="text/css" rel="stylesheet" href="stylesheet.css" />
<title>My Social Network</title>
</head>

<body>
<div class="friend" id="best_friend">
<img src="http://www.smashbros.com/images/og/link.jpg" />
</div>
<div class="friend">
<img src="http://upload.wikimedia.org/wikipedia/commons/9/9e/Navi_oOot.png" />
</div>
<div class="family">
<img src="http://fc07.deviantart.net/fs70/i/2011/196/c/a/deku_tree_manip_by_thegeminisage-d3u262q.jpg" />
</div>
<div class="family">
<br>
<p>Forest elf guy number 7</p>
</div>
<div class="enemy" id="archnemesis">
<img src="#" />
</div>
<div class="enemy">
<img src="#" />
</div>
</body>

</html>

最佳答案

要解决此问题,您可以将 vertical-align 属性更改为默认值以外的值,即 baseline

在这种情况下,以下将起作用:

Example Here

div {
display: inline-block;
vertical-align: top;
/* other styling.. */
}

至于为什么该元素的位置低于其他元素的原因,是因为文本与同级元素的基线对齐。请注意,如果您 remove the text ,问题不再出现。由于该元素是 inline-block,更改 vertical-align 属性将对其产生影响。另一方面,如果元素是 float 的,您也不会看到这个问题。

关于html - 为什么其中带有 p 标签的 html div 标签与带有 img 标签的标签位置不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28227676/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com