CSS3下拉菜单实现

news2024/9/24 9:28:35

导航菜单:

<nav class="multi_drop_menu">
        <!-- 一级开始 -->
        <ul>
            <li><a href="#">Power</a></li>
            <li><a href="#">Money</a></li>
            <li><a href="#">Love</a></li>
            <li><a href="#">Fame</a>
                <!-- 二级开始 -->
                <ul>
                    <li><a href="#">Sports Star</a></li>
                    <li><a href="#">Movie Star</a></li>
                    <li><a href="#">Rock Star</a>
                        <!-- 三级开始 -->
                        <ul>
                            <li><a href="#">Bruce Springsteen</a></li>
                            <li><a href="#">Bone</a></li>
                            <li><a href="#">Mick Jagger</a></li>
                            <li><a href="#">Bob Dylan</a></li>
                        </ul>
                        <!-- 三级结束 -->
                    </li>
                    <li><a href="#">Web Designer</a></li>
                </ul>
                <!-- 二级结束 -->
            </li>
        </ul>
        <!-- 一级结束 -->
    </nav>

顶级菜单

样式:

1.菜单字体:1em helvetica,arial,sans-serif;

2.a链接,显示为块状撑满,字体颜色#555,背景色#eee,内边距上下0.2em左右1em,边框颜色透明。

3.a伪类悬停,字体颜色#fff,背景色#aaa.

4.a伪类点击,背景色#fff,字体颜色#ccc

5.整体菜单样式设置内边距,外边距为0.

6.菜单未排序列表为左浮动。

7.列表为左浮动,去掉点,相对定位。

8.列表中的a显示为块状,边框右侧为实线,背景延伸内边距盒子,下划线去掉。

9.最后一个a不显示右框线

10.隐藏所有低级菜单。

<style>
    .multi_drop_menu {
        font: 1em helvetica, arial, sans-serif;
    }

    .multi_drop_menu a {
        display: block;
        color: #555;
        background-color: #eee;
        padding: 0.2em 1em;
        border-color: transparent;
    }

    .multi_drop_menu a:hover {
        color: #fff;
        background-color: #aaa;
    }

    .multi_drop_menu a:active {
        background: #fff;
        color: #ccc;
    }

    .multi_drop_menu * {
        margin: 0;
        padding: 0;
    }

    .multi_drop_menu ul {
        float: left;
    }

    .multi_drop_menu li {
        float: left;
        list-style-type: none;
        position: relative;
    }

    .multi_drop_menu li a {
        display: block;
        border-right-style: solid;
        background-clip: padding-box;
        text-decoration: none;
    }

    .multi_drop_menu li:last-child a {
        border-right-style: none;
    }

    .multi_drop_menu li ul {
        display: none;
    }
</style>

菜单的下拉部分(二级菜单)

需要添加的CSS:

1.二级菜单列表宽度给字体9倍

2.二级菜单内部a去掉右边框,上边框实线。

3.二级菜单列表临时显示,显示为块状,相对于父亲绝对定位,左边与父菜单对齐,顶边与父菜单底对齐。

4.二级菜单列表项停止浮动恢复堆叠。

5.三级菜单临时隐藏。

效果:

style中增加CSS:

.multi_drop_menu li ul {
            width: 9em;
            display: none;
            position: absolute;
            left: 0;
            top: 100%;
        }

        .multi_drop_menu li:hover>ul {
            display: block;
        }

        .multi_drop_menu li li a {
            border-right-style: none;
            border-top: solid;
        }

        .multi_drop_menu li li {
            float: none;
        }

添加三级菜单

样式中增加:

.multi_drop_menu li li ul {
    position: absolute;
    left: 100%;
    top: 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2033758.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【数模修炼之旅】02 多目标规划 深度解析(教程+代码)

【数模修炼之旅】02 多目标规划 深度解析&#xff08;教程代码&#xff09; 接下来 C君将会用至少30个小节来为大家深度解析数模领域常用的算法&#xff0c;大家可以关注这个专栏&#xff0c;持续学习哦&#xff0c;对于大家的能力提高会有极大的帮助。 1 多目标规划介绍及应…

百度智能云发布3款轻量级+2款场景大模型

文心大模型ERNIE 3.5是目前百度智能云千帆大模型平台上最受欢迎的基础大模型之一。针对用户的常见通用的对话场景&#xff0c;ERNIE 3.5 在指令遵循、上下文学习和逻辑推理能力三方面分别进行了能力增强。 ERNIE Speed作为三款轻量级大模型中的“大个子”&#xff0c;推理场景…

解决连接不上Linux和服务器中的Nacos(Windows中能连接但是Linux中却不行)

报错 com.alibaba.nacos.shaded.io.grpc.StatusRuntimeException: UNKNOWN: Uncaught exception in the SynchronizationContext. Re-thrown. at com.alibaba.nacos.shaded.io.grpc.Status.asRuntimeException(Status.jav 2024-08-13T10:21:52.93708:00 ERROR 27764 --- …

ArduPilot开源代码之FMU+IOMCU设计

ArduPilot开源代码之FMUIOMCU设计 1. 源由2. 设计概念3. FMU & IOMCU特点3.1 FMU&#xff08;Flight Management Unit&#xff09;的主要功能3.2 IOMCU&#xff08;Input/Output Microcontroller Unit&#xff09;的主要功能3.3 主要差异 4. 主/辅助(MAIN/AUX) PWM输出5. 软…

【北京仁爱堂】痉挛性斜颈的早期症状,你了解吗?

在日常生活中&#xff0c;您可能很少听到“痉挛性斜颈”这个名词&#xff0c;但它却是一种不容忽视的疾病。今天&#xff0c;就让我们一起来了解一下痉挛性斜颈的早期症状&#xff0c;以便能够及时发现并采取相应的措施。 痉挛性斜颈是一种局限性肌张力障碍疾病&#xff0c;主要…

Gitlab搭建服务器好做吗 Gitlab搭建服务器操作指南

GitLab是一个强大的开源代码托管和CI/CD工具&#xff0c;广泛用于软件开发的版本控制和自动化构建。对于许多公司和开发团队来说&#xff0c;自行搭建GitLab服务器是一个既具挑战性又有很多好处的选择。本文将详细讨论搭建GitLab服务器的难易程度&#xff0c;提供一份详尽的操作…

死信队列.

“死信”是指在RabbitMQ中那些因为某些原因无法被正常处理的消息。

OpenCV图像滤波(11)中值滤波medianBlur函数的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 功能描述 该函数使用中值滤波器对图像进行模糊处理。 该函数采用 ksizeksize 的窗口尺寸对图像进行平滑处理。对于多通道图像&#xff0c;每个通道将被独…

Linux发行版深度对比:Ubuntu、CentOS与Fedora

在Linux的广阔世界中&#xff0c;Ubuntu、CentOS和Fedora作为三大主流发行版&#xff0c;各自拥有独特的生态系统、用户基础和开发理念。它们不仅在技术架构上有着显著的差异&#xff0c;更在用户体验、社区支持、软件更新策略以及安全性能等方面展现出各自的特色。本文将对这三…

红黑树R-B Tree

文章目录 概述红黑树的特性红黑树的原理应用为什么设计红黑树红黑树左旋与右旋的区别 概述 红黑树&#xff08;Red Black Tree&#xff09;是一种自平衡的二叉查找树&#xff0c;在计算机科学中广泛使用&#xff0c;其典型的用途是实现关联数组。R-B Tree&#xff0c;全称是 R…

[C++][opencv]基于opencv实现photoshop算法亮度和对比度调整

【测试环境】 vs2019 opencv4.8.0 【效果演示】 【核心实现代码】 #include <iostream> #include "opencv2/core.hpp" #include "opencv2/imgproc.hpp" #include "opencv2/highgui.hpp"using namespace std; using namespace cv;#defi…

【区块链+食品安全】食药产业全流程可追溯平台 | FISCO BCOS应用案例

为响应国家强化食品安全追溯监管的号召&#xff0c;吉科软信息技术有限公司基于 FISCO BCOS 联盟链开源技术&#xff0c;推出了 食药产业全流程可追溯平台&#xff0c;并应用于吉林省白山市。该平台建立了从食药产品种养殖、生产加工、冷链运输、 流通到消费的全链条可追溯体系…

掌握Python eval()函数:解析动态代码执行的神奇之处

eval() 是 Python 提供的一个内置函数&#xff0c;用于动态执行字符串形式的表达式。 虽然它功能强大&#xff0c;但同时也伴随着一定的风险和局限性。在本文中&#xff0c;我们将详细介绍 eval() 的用法、注意事项以及一些常见的应用场景。 一、eval() 函数的基本用法 基本语…

SpringIOC和SpringAOC

lombok插件 XML<!-- 加载资源文件 --><context:property-placeholder location"classpath:jdbc.properties"></context:property-placeholder><!-- 注入数据源 --><bean id"dataSource" class"com.mchange.v2.c3p0.ComboP…

Supervision 计算机视觉工具

简介 Supervision库是Python计算机视觉低代码工具&#xff0c;旨在为用户提供便捷高效的接口&#xff0c;以便处理数据集并直观地展示检测结果。绘制检测结果&#xff0c;统计指定区域内检测目标数量Supervision都提供了相应的接口 安装库 要求Python版本>3.8 1.安装无图像…

【机器学习】反向传播算法的直观解释、微积分原理以及反向传播中的链式法则

引言 正如有句话说的好&#xff0c;neurons-that-fire-together-wire-together&#xff08;一同激活的神经元关联在一起&#xff09; 文章目录 引言一、反向传播算法的直观解释1.1 前向传播1.2 计算误差1.3 反向传播误差1.4 更新权重 二、微积分原理2.1 损失函数 L L L2.2 链式…

javaEE WebServlet、SpringWebMVC、SpringBoot实现跨域访问的4种方式及优先级

文章目录 1. 前置知识2. 原理和解决方案总结2.1. 跨域不通过原理流程图2.2. 实现原理&#xff1a;添加以下http响应头2.3. 四种跨域实现方式及优先级&#xff08;从高到低&#xff09; 3. 具体实现代码3.1. 跨域全局配置方式-Filter(全适用)3.2. 跨域全局配置方式-SpringMvc3.3…

数字孪生模型制作教程虚拟现实城市模型制作3dmax数字城市glb/gltf

需要做数字孪生可以QQ可以联系这里&#xff0c;谢谢 下面开始教程 1打开3dmax软件&#xff0c;和需要做的建筑图片 2 在3dmax安图片先建一个长方体框架 3先给长方体贴一个墙体贴图 4在ps做贴图 5 做好贴图贴到3dmax中 6 然后ps再做下一张贴图 7 做好贴图贴到3dma…

[Redis] Redisson分布式锁原理及源码分析

目录 基于 Redis 的分布式锁 Redisson实现分布 Redisson分布式锁原理图 RedissonLock实现分布式锁源码分析 RedissonLock构造方法 lock()加锁 获取锁 锁续命逻辑 tryLockInnerAsync加锁lua脚本分析 unlock()解锁 基于 Redis 的分布式锁 实现方式: 使用 Redis 的 SE…

Idea2023.3版本创建spring Initializr没有JDK8

解决方法&#xff1a; https://start.aliyun.com