返回

css制作菜单图标教程

前端

前言

菜单图标在网页设计中起着至关重要的作用。它们可以帮助用户轻松导航网站,并访问他们想要的信息。随着响应式设计的普及,菜单图标变得更加重要,因为它们可以帮助网站在不同设备上看起来和工作都很好。

创建菜单图标

1. 汉堡包图标

汉堡包图标是当今最流行的菜单图标之一。它由三条水平线组成,可以轻松地用CSS创建。

.menu-icon {
  width: 30px;
  height: 30px;
  background-color: #000;
  position: absolute;
  top: 10px;
  right: 10px;
}

.menu-icon::before,
.menu-icon::after {
  content: "";
  position: absolute;
  width: 30px;
  height: 3px;
  background-color: #000;
}

.menu-icon::before {
  top: 10px;
}

.menu-icon::after {
  top: 20px;
}

2. 折叠菜单

折叠菜单是一种可以折叠和展开的菜单。它非常适合在空间有限的情况下使用。

.menu {
  width: 200px;
  height: 200px;
  background-color: #fff;
  position: absolute;
  top: 10px;
  left: 10px;
}

.menu-item {
  width: 100%;
  height: 50px;
  line-height: 50px;
  text-align: center;
  background-color: #000;
  color: #fff;
}

.menu-item:hover {
  background-color: #333;
}

.menu-toggle {
  width: 30px;
  height: 30px;
  background-color: #000;
  position: absolute;
  top: 10px;
  right: 10px;
}

.menu-toggle::before,
.menu-toggle::after {
  content: "";
  position: absolute;
  width: 30px;
  height: 3px;
  background-color: #000;
}

.menu-toggle::before {
  top: 10px;
}

.menu-toggle::after {
  top: 20px;
}

.menu-open {
  display: block;
}

.menu-closed {
  display: none;
}

3. 滑动菜单

滑动菜单是一种可以从屏幕一侧滑出的菜单。它非常适合在移动设备上使用。

.menu {
  width: 200px;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: -200px;
}

.menu-item {
  width: 100%;
  height: 50px;
  line-height: 50px;
  text-align: center;
  background-color: #000;
  color: #fff;
}

.menu-item:hover {
  background-color: #333;
}

.menu-toggle {
  width: 30px;
  height: 30px;
  background-color: #000;
  position: absolute;
  top: 10px;
  right: 10px;
}

.menu-toggle::before,
.menu-toggle::after {
  content: "";
  position: absolute;
  width: 30px;
  height: 3px;
  background-color: #000;
}

.menu-toggle::before {
  top: 10px;
}

.menu-toggle::after {
  top: 20px;
}

.menu-open {
  left: 0;
}

.menu-closed {
  left: -200px;
}

4. 响应式菜单

响应式菜单是一种可以在不同设备上自动调整大小的菜单。它非常适合创建可在所有设备上正常工作的网站。

.menu {
  width: 100%;
  height: 50px;
  background-color: #fff;
  position: absolute;
  top: 0;
  left: 0;
}

.menu-item {
  width: 25%;
  height: 50px;
  line-height: 50px;
  text-align: center;
  background-color: #000;
  color: #fff;
}

.menu-item:hover {
  background-color: #333;
}

@media (max-width: 768px) {
  .menu {
    height: 100%;
  }

  .menu-item {
    width: 100%;
  }
}

5. 动画效果

可以使用CSS创建各种动画效果的菜单图标。

.menu-icon {
  width: 30px;
  height: 30px;
  background-color: #000;
  position: absolute;
  top: 10px;
  right: 10px;
}

.menu-icon::before,
.menu-icon::after {
  content: "";
  position: absolute;
  width: 30px;
  height: 3px;
  background-color: #000;
}

.menu-icon::before {
  top: 10px;
  transform: translateX(-10px);
}

.menu-icon::after {
  top: 20px;
  transform: translateX(10px);
}

.menu-icon:hover {
  animation: menu-icon-animation 0.5s ease-in-out infinite alternate;
}

@keyframes menu-icon-animation {
  0% {
    transform: translateX(0);
  }

  50% {
    transform: translateX(10px);
  }

  100% {
    transform: translateX(0);
  }
}

6. hover效果

可以使用CSS创建各种hover效果的菜单图标。

.menu-icon {
  width: 30px;
  height: 30px;
  background-color: #000;
  position: absolute;
  top: 10px;
  right: 10px;
}

.menu-icon::before,
.menu-icon::after {
  content: "";
  position: absolute;
  width: 30px;
  height: 3px;
  background-color: #000;
}

.menu-icon::before {
  top: 10px;
}

.menu-icon::after {
  top: 20px;
}

.menu-icon:hover {
  background-color: #333;
}

.menu-icon:hover::before {
  transform: translateX(10px);
}

.menu-icon:hover::after {
  transform: translateX(-10px);
}

总结

菜单图标在网页设计中起着至关重要的作用。它们可以帮助用户轻松导航网站,并访问他们想要的信息。CSS可以轻松地创建各种样式的菜单图标,包括汉堡包图标、折叠菜单、滑动菜单、响应式菜单、动画效果和hover效果。这些图标可以帮助您创建出美观实用的网站。