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

如何使用checkbox控制NavBar的Font Awesome图标实现移动端菜单开关

修复后实现效果

  • 移动端点击汉堡图标可展开/收起菜单
  • 菜单展开时汉堡图标自动切换为关闭叉号,收起时切回汉堡图标
  • 完全通过原生CSS+checkbox实现,无需额外JS

修正后的HTML代码

<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@200&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css">

<div class="header">
  <div>
    <div class="logo">
      <h4>The Blue Lion 
        <!-- 把图标放到label里绑定checkbox,点击图标直接触发状态切换 -->
        <label for="nav-toggle" class="nav-toggle-label">
          <i class="fas fa-bars"></i>
        </label>
      </h4>
      <!-- 保留唯一ID的隐藏checkbox作为状态控制器 -->
      <input type="checkbox" id="nav-toggle" class="nav-toggle">
    </div>
  </div>
</div>

<div class="navbar">
  <div class="nav-links" id="myTopnav">
    <ul>
      <li><a href="#">Food</a></li>
      <li><a href="#">Drink</a></li>
      <li><a href="#">Covid-19</a></li>
      <li><a href="#">News</a></li>
      <li><a href="#">Join the Team</a></li>
    </ul>
  </div>
</div>

<div class="contents1">
  <img src="https://mcdn.wallpapersafari.com/medium/84/3/pQuUz4.jpg" class="bluepic" alt="Blue">
</div>

<div class="footer">
  <div class="info">
    Leave us a review:
    <i class="fab fa-tripadvisor"></i>
  </div>

  <div class="socialiconsf">
    <i class="fab fa-facebook-f"></i>
    <i class="fab fa-twitter"></i>
    <i class="fab fa-instagram"></i>
  </div>
</div>

<div class="footer2">
  <p>
    © The Blue Lion 2021
  </p>
</div>

修正后的CSS代码(原有通用样式保持不变,仅更新导航/响应式部分)

/* 全局通用样式、头部、桌面端导航、底部样式可完全保留原有代码 */
.nav-toggle {
  display: none;
}

/* 图标切换逻辑:checkbox选中时替换汉堡图标为关闭叉号 */
.nav-toggle:checked ~ .nav-toggle-label .fa-bars::before {
  content: "\f00d";
}

@media only screen and (max-width: 600px) {
  .nav-toggle-label {
    float: right;
    margin-top: 10px;
    margin-right: 40px;
    cursor: pointer;
  }
  .fa-bars {
    font-size: 20px;
  }
  .logo {
    text-align: left;
    font-size: 25px;
  }
  .nav-links {
    position: fixed;
    width: 100%;
    height: 100vh;
    text-align: center;
    background-color: #f7f7f7;
    border-bottom: 1px solid rgb(107, 76, 76);
    top: 80px;
    left: 0;
    flex-direction: column;
    display: none;
    margin: 0;
    padding: 0;
  }
  .nav-links ul {
    flex-direction: column;
    width: 100%;
    padding: 0;
    margin: 0;
  }
  /* 修正选择器逻辑,选中checkbox后显示菜单 */
  .nav-toggle:checked ~ .navbar .nav-links {
    display: flex;
  }
  .nav-links li {
    display: block;
    width: 100%;
    padding: 14px 0;
  }
  .contents1 {
    margin-top: 5vh;
  }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 20:57:03