wordpress网站手机端固定菜单+二级弹出菜单完整代码

本文介绍了如何在WordPress移动端实现一个底部固定菜单,配合二级弹出菜单功能。提供了HTML、CSS和JavaScript代码示例,以及如何在主题选项或自定义代码中应用这些功能。
摘要由CSDN通过智能技术生成

基于wordpress手机端底部固定菜单+二级弹出菜单。

移动端单独显示。带icon图标。

用法可在任意主题选项里或高级选项里有自定义代码,复制粘贴即可,懂代码的可自行修改。

效果图:

 图一

图二

代码:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>底部菜单</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css">
<style>
  body {
    margin: 0;
    padding: 0;
    font-family: Arial, sans-serif;
    height: 100%; /* 让页面占据整个视窗高度 */
  }
  .bottom-menu {
    position: fixed; /* 固定在页面底部 */
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: #4dc0dc;
    display: flex; /* 使用弹性盒子模型来水平排列菜单项 */
    justify-content: space-around; /* 平均分布菜单项 */
    padding: 10px 0; /* 上下留出一些空间 */
    z-index: 9999; /* 设置较高的层级,确保菜单位于其他元素之上 */
  }
  .bottom-menu-item {
    color: white;
    text-decoration: none;
    text-align: center;
    flex-grow: 1; /* 每个菜单项都可以自动填充剩余空间 */
    padding: 10px; /* 内边距 */
    box-sizing: border-box; /* 让内边距不影响元素的实际宽度 */
    display: flex; /* 使用弹性盒子模型 */
    flex-direction: column; /* 竖直方向排列子元素 */
    align-items: center; /* 水平居中子元素 */
  }
  .bottom-menu-item:hover {
    background-color: #45a5bd; /* 鼠标悬停时的背景颜色 */
    cursor: pointer; /* 鼠标悬停时显示手型光标 */
  }
  .bottom-menu-item i {
    margin-bottom: 5px; /* 图标与文字之间的间距 */
  }
  .submenu {
    display: none; /* 默认隐藏二级菜单 */
    position: fixed; /* 固定在页面底部 */
    bottom: 50px; /* 离页面底部一定距离 */
    left: 0;
    width: 100%;
    background-color: #4dc0dc;
    padding: 10px 0; /* 上下留出一些空间 */
    overflow-y: auto; /* 当内容超出可视区域时自动添加垂直滚动条 */
    max-height: calc(100vh - 110px); /* 计算剩余可视高度,避免被遮挡 */
    z-index: 9998; /* 设置较低的层级,确保二级菜单位于主菜单上方 */
  }
  .submenu a {
    color: white;
    text-decoration: none;
    display: block;
    text-align: center;
    padding: 5px 0;
  }
</style>
</head>
<body>

<div class="bottom-menu">
  <a href="#" class="bottom-menu-item"><i class="fas fa-home fa-lg"></i> Home</a> <!-- 主菜单项:Home -->
  <a href="#" class="bottom-menu-item"><i class="fas fa-tags fa-lg"></i> Discount</a> <!-- 主菜单项:Discount -->
  <div class="bottom-menu-item" onclick="toggleSubMenu('helpSubMenu')"><i class="fas fa-question-circle fa-lg"></i> Help</div> <!-- 主菜单项:Help -->
  <div class="bottom-menu-item" onclick="toggleSubMenu('mySubMenu')"><i class="fas fa-user fa-lg"></i> My</div> <!-- 主菜单项:My -->
</div>

<div id="helpSubMenu" class="submenu"> <!-- 弹出的二级菜单:Help -->
  <a href="#">Help Option 1</a>
  <a href="#">Help Option 2</a>
  <a href="#">Help Option 3</a>
  <a href="#">Help Option 4</a>
</div>

<div id="mySubMenu" class="submenu"> <!-- 弹出的二级菜单:My -->
  <a href="#">My Option 1</a>
  <a href="#">My Option 2</a>
  <a href="#">My Option 3</a>
  <a href="#">My Option 4</a>
</div>

<script>
  function toggleSubMenu(subMenuId) {
    var subMenu = document.getElementById(subMenuId);
    if (subMenu.style.display === "none" || !subMenu.style.display) {
      subMenu.style.display = "block";
    } else {
      subMenu.style.display = "none";
    }
  }

  var menuItems = document.querySelectorAll('.bottom-menu-item');
  menuItems.forEach(function(item) {
    item.addEventListener('touchstart', function() {
      var submenuId = this.getAttribute('data-submenu');
      if (submenuId) {
        toggleSubMenu(submenuId);
      }
    });
  });
</script>

</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值