gpt4 book ai didi

html - 为什么位置:absolute adds 4px to the height of the outer container and how to remove it?

转载 作者:太空宇宙 更新时间:2023-11-04 08:02:40 25 4
gpt4 key购买 nike

我正在尝试制作某种流体集管或其他东西。问题是我注意到当我将 position:absolute 添加到 a 元素时,它会向标题添加 4 个像素: enter image description here

如果我删除 position:absolute,则它不会在高度上额外增加 4 个像素: enter image description here

这是我到目前为止的想法:

<div class="content-container">
<a href="#" class="header-logo"><img src="https://i.imgur.com/bn2vAjo.png" alt="" title=""></a>
<nav class="main-menu">
<ul>
<li><a href="">Journal</a></li>
<li><a href="">About</a></li>
<li><a href="">About</a></li>
<li><a href="">Contact</a></li>
</ul>
</nav>
</div>

.content-container {
background: #292929;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
}

.header-logo {
align-self: center;
}

nav.main-menu {
align-self: center;
}
nav.main-menu li {
display:inline-block;
width: 132px;
height: 132px;
font-weight:600;
position: relative;
}

nav.main-menu li a {
display: block;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}

* {
border: 0 !important;
margin: 0 !important;
padding: 0 !important;
}

https://jsfiddle.net/yafs3yoo/

我显然在这里遗漏了一些东西,但我自己无法弄清楚。我希望这个标题正好是 132 像素高(带边框), Logo 位于左侧(垂直居中),菜单位于右侧(垂直居中)。如何摆脱标题中的这些额外的 4 个像素?

最佳答案

正如 Paulie_D 在评论中暗示的那样,只需将 vertical-align: top; 添加到 nav.main-menu li 的规则中即可

https://jsfiddle.net/3z0vefLL/1/

这是由于内联 block 沿基线的默认垂直对齐。

关于html - 为什么位置:absolute adds 4px to the height of the outer container and how to remove it?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46890779/

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