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

如何使用HTML&CSS实现logo下方居中导航栏并适配平板移动端

问题原因

原有header采用水平弹性布局,logo和导航默认横向左右分布,同时固定高度限制了垂直排版空间,导航的外边距、内边距设置逻辑混乱,导致无法居中。另外原有代码还存在HTML多余闭合标签、媒体查询未正确闭合的语法问题。

修复方案

第一步:修正HTML语法错误

删除nav ul末尾多余的</li>标签:

<header>
  <h1 class="logo">👨‍💻 Ett Namn</h1>
  <!-- 导航栏 -->
  <nav>
    <ul>
      <li><a href="index.html">🏠 Hem</a></li>
      <li><a href="portfolio.html">📁 Portfolio</a></li>
      <li><a href="rapport.html">📋 Rapport</a></li>
    </ul>
  </nav>
</header>

第二步:修改核心CSS样式

替换原有header、logo、nav相关样式:

/***************站点头部***************/
header {
  display: flex;
  /* 改为垂直排版,让logo在上导航在下 */
  flex-direction: column;
  /* 取消固定高度,自适应内容高度 */
  height: auto;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 0.5rem 0;
}

.logo {
  /* 取消左侧边距,只保留上下间距 */
  margin: 0.8rem 0 0.5rem;
  font-weight: 500;
  text-transform: uppercase;
  color: white;
}

nav {
  /* 取消右侧边距 */
  margin: 0 0 0.8rem;
}

/* 清除ul默认内边距 */
nav ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

header li {
  font-weight: 300;
  display: inline;
}

第三步:修正响应式样式

删除768px断点下logo和nav的错误边距设置,只保留需要的适配逻辑即可:

/***************平板端***************/
@media only screen and (max-width: 768px) {
  /* 删掉原来的.logo、nav、header li里的padding-left、padding-right等错误设置 */
  header li {
    /* 小屏幕下缩小导航项间距 */
    padding: 0 0.8rem;
  }
  /* 其他原有逻辑保留 */
  img {
    width: 40%;
    height: 5%;
  }
  .rows {
    display: inline-block;
  }
  .col {
    margin-bottom: 20%;
  }
  #leftpic {
    margin: auto;
    margin-top: -15%;
  }
  #rightpic {
    margin: auto;
    margin-top: -15%;
  }
  footer {
    margin-left: 20%;
  }
  .intro {
    padding-top: 10%;
    font-size: 70%;
    text-align: center;
  }
}

额外修复

原有所有媒体查询都缺少闭合的},请给每个@media代码块末尾补上闭合大括号,避免样式失效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 01:15:05