…">
当前位置:首页 > CSS

css制作横向菜单

2026-01-15 11:35:49CSS

使用 Flexbox 制作横向菜单

Flexbox 是制作横向菜单的现代方法,代码简洁且兼容性好。以下是一个基本实现:

<nav class="horizontal-menu">
  <a href="#">首页</a>
  <a href="#">产品</a>
  <a href="#">服务</a>
  <a href="#">关于</a>
  <a href="#">联系</a>
</nav>
.horizontal-menu {
  display: flex;
  gap: 1rem; /* 项目间距 */
  background-color: #333;
  padding: 0.5rem;
}

.horizontal-menu a {
  color: white;
  text-decoration: none;
  padding: 0.5rem 1rem;
}

.horizontal-menu a:hover {
  background-color: #555;
}

使用 Inline-Block 的传统方法

对于需要支持老旧浏览器的情况,可以使用 inline-block:

.horizontal-menu {
  font-size: 0; /* 消除inline-block间隙 */
  background-color: #333;
}

.horizontal-menu a {
  display: inline-block;
  font-size: 16px;
  color: white;
  text-decoration: none;
  padding: 0.5rem 1rem;
}

.horizontal-menu a:hover {
  background-color: #555;
}

响应式横向菜单

添加媒体查询使菜单在小屏幕上自动换行:

.horizontal-menu {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

@media (min-width: 768px) {
  .horizontal-menu {
    flex-wrap: nowrap;
  }
}

带下拉菜单的横向导航

实现二级菜单的横向导航:

<nav class="dropdown-menu">
  <ul>
    <li><a href="#">首页</a></li>
    <li>
      <a href="#">产品</a>
      <ul>
        <li><a href="#">产品A</a></li>
        <li><a href="#">产品B</a></li>
      </ul>
    </li>
  </ul>
</nav>
.dropdown-menu ul {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0;
}

.dropdown-menu li {
  position: relative;
}

.dropdown-menu li ul {
  display: none;
  position: absolute;
  flex-direction: column;
}

.dropdown-menu li:hover ul {
  display: flex;
}

固定在顶部的横向菜单

创建始终停留在视窗顶部的菜单:

.fixed-menu {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  display: flex;
  justify-content: space-around;
  background-color: rgba(0,0,0,0.8);
}

body {
  padding-top: 50px; /* 防止内容被菜单遮挡 */
}

css制作横向菜单

标签: 横向菜单
分享给朋友:

相关文章

vue菜单实现

vue菜单实现

Vue 菜单实现方法 使用 Element UI 的菜单组件 Element UI 提供了现成的菜单组件,适合快速实现导航菜单。安装 Element UI 后,可以直接使用 el-menu 相关组件。…

jquery菜单

jquery菜单

以下是关于使用jQuery创建交互式菜单的几种常见方法及实现示例: 基础下拉菜单实现 通过jQuery的slideToggle和toggleClass实现简单下拉效果: $('.menu-it…

纯css制作tab菜单

纯css制作tab菜单

纯CSS制作Tab菜单的方法 使用radio input控制Tab切换 通过<input type="radio">和<label>元素配合:checked伪类实现Tab切换效…

php 实现级联菜单

php 实现级联菜单

实现级联菜单的方法 级联菜单(Cascading Dropdown)通常用于根据前一个选择动态加载下一个菜单的选项。以下是使用PHP和JavaScript(Ajax)实现级联菜单的详细方法。 数据…

uniapp 长按菜单

uniapp 长按菜单

实现长按菜单的方法 在UniApp中实现长按菜单功能,可以通过以下几种方式完成,具体取决于平台和需求。 使用@longpress事件绑定 在模板中为元素添加@longpress事件监听,触发后显示自…

vue实现级联菜单

vue实现级联菜单

实现级联菜单的基本思路 Vue中实现级联菜单通常需要以下关键点:数据结构的组织、组件间的通信、动态渲染子菜单。一般采用递归组件或逐层渲染的方式实现。 数据结构设计 级联菜单的数据通常为嵌套结构,例…