You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

HTML/CSS 实现菜单图片与菜单项垂直居中的方法

如何让导航菜单项与图片居中对齐?

目标效果

导航菜单目标效果

当前实现效果

当前导航菜单效果

我正在制作上述导航菜单,目前菜单项和图片无法居中对齐,尝试多次仍未解决,希望能得到帮助并了解修改代码的作用。

原CSS代码

body {font-family: Poppins;background-color: #F5F6F6;}
.container {width: 70%;margin: 0 auto;}
.top-space {height: 25px;}
.navbar ul li {display: inline;}
.navbar ul li a {text-decoration: none;line-height: 50px;}
.navbar ul li img {height: 50px;}

原HTML代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Poppins">
    <link rel="stylesheet" href="./style/reset.css">
    <link rel="stylesheet" href="./style/style.css">
</head>
<body>
    <div class="container">
        <div class="top-space"></div>
        <div class="navbar">
            <ul>
                <li><a href=""><img src="./img/logo.png"> </a></li>
                <li><a href="">adssdaads</a></li>
                <li><a href="">adssdaads</a></li>
                <li><a href="">adssdaads</a></li>
                <li><a href="">adssdaads</a></li>
            </ul>
        </div>
    </div>
</body>
</html>

修改后的CSS代码

body {font-family: Poppins;background-color: #F5F6F6;}
.container {width: 70%;margin: 0 auto;}
.top-space {height: 25px;}
.navbar ul {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 0;
}
.navbar ul li {
    list-style: none;
}
.navbar ul li a {
    text-decoration: none;
}
.navbar ul li img {height: 50px;}

修改说明

  1. .navbar ul添加display: flex和align-items: center:
    • Flex布局是实现元素对齐最便捷的方案,align-items: center会让所有子菜单项在垂直方向上精准居中,直接解决图片与文字的对齐问题。
  2. 添加gap: 20px:
    • 给菜单项之间设置统一间距,避免元素挤在一起,和目标效果的视觉表现更贴近。
  3. 移除navbar ul li的display: inline,添加list-style: none:
    • Flex子项默认是块级元素,无需设置inline;同时移除列表默认的项目符号,让导航栏样式更整洁。
  4. 移除navbar ul li a的line-height: 50px:
    • 之前用line-height尝试对齐,但Flex的align-items: center已经能精准控制垂直对齐,保留line-height反而可能引发布局冲突。

内容的提问来源于stack exchange,提问作者Emir Bolat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 23:45:40