当前位置:首页 > CSS

制作css纵向菜单

2026-03-12 00:58:32CSS

基础结构

使用HTML的无序列表<ul>和列表项<li>构建菜单骨架,<a>标签定义菜单项链接:

<ul class="vertical-menu">
  <li><a href="#">首页</a></li>
  <li><a href="#">产品</a></li>
  <li><a href="#">服务</a></li>
  <li><a href="#">关于我们</a></li>
</ul>

核心CSS样式

通过CSS移除默认列表样式,设置宽度、背景色及悬停效果:

制作css纵向菜单

.vertical-menu {
  width: 200px;
  list-style-type: none;
  padding: 0;
  margin: 0;
  background-color: #f1f1f1;
}

.vertical-menu li a {
  display: block;
  padding: 12px 16px;
  color: #333;
  text-decoration: none;
}

.vertical-menu li a:hover {
  background-color: #ddd;
}

添加交互效果

通过CSS增强视觉反馈,如当前选中状态和过渡动画:

.vertical-menu li a.active {
  background-color: #4CAF50;
  color: white;
}

.vertical-menu li a {
  transition: background-color 0.3s ease;
}

响应式调整

使用媒体查询适配移动端,调整为全宽度菜单:

制作css纵向菜单

@media screen and (max-width: 600px) {
  .vertical-menu {
    width: 100%;
  }
}

高级扩展

添加下拉子菜单功能(需配合JavaScript或CSS伪类):

<li class="dropdown">
  <a href="#">更多选项 ▼</a>
  <ul class="dropdown-content">
    <li><a href="#">子项1</a></li>
    <li><a href="#">子项2</a></li>
  </ul>
</li>

对应CSS:

.dropdown-content {
  display: none;
  position: absolute;
  left: 100%;
  top: 0;
  background-color: #f9f9f9;
  min-width: 160px;
}

.dropdown:hover .dropdown-content {
  display: block;
}

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

相关文章

vue实现折叠菜单

vue实现折叠菜单

实现折叠菜单的基本思路 在Vue中实现折叠菜单通常涉及使用组件化开发,结合状态管理控制菜单的展开与折叠。核心是通过v-show或v-if动态切换子菜单的显示状态,并通过事件触发(如点击)改变状态。…

css制作横向菜单

css制作横向菜单

使用 Flexbox 制作横向菜单 Flexbox 是制作横向菜单的现代方法,代码简洁且兼容性好。以下是一个基本实现: <nav class="horizontal-menu"> &…

纯css制作tab菜单

纯css制作tab菜单

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

vue实现级联菜单

vue实现级联菜单

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

vue实现纵向列表

vue实现纵向列表

实现纵向列表的基本方法 在Vue中实现纵向列表可以通过v-for指令结合数组数据渲染。核心是利用循环遍历数据生成列表项,并设置CSS控制纵向排列。 <template> <di…

vue底部菜单实现

vue底部菜单实现

实现底部菜单的方法 在Vue中实现底部菜单通常涉及使用v-tab组件或自定义布局。以下是几种常见的方法: 使用Vuetify的v-bottom-navigation组件 Vuetify提供了专门的…