CSS3下拉菜单实现

server/2024/10/18 8:28:28/

导航菜单:

<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.ppmy.cn/server/99671.html

相关文章

8.9 python管理mysql

[rootserver1 ~]# pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple //这是设置清华镜像站&#xff0c;提高下载安装速度&#xff0c;如果报错提示找不到config&#xff0c;这是因为版本低&#xff0c;临时使用清华镜像站来升级 pip&…

学习记录——day30 网络编程 端口号port 套接字socket TCP实现网络通信

目录 一、端口号 port 二、套接字 socket 1、原理 2、socket函数介绍 三、TCP实现网络通信 1、原理 2、TCP通信原理图 3、TCP相关函数 1&#xff09;bind 绑定 2&#xff09;listen 监听 3&#xff09;accept 接收连接请求 4&#xff09;recv 接收 5&#xff09;sen…

AngularJS 事件

AngularJS 事件 AngularJS 是一个强大的 JavaScript 框架&#xff0c;它通过扩展 HTML 的语法&#xff0c;使得动态内容的创建变得更加简单和直观。在 AngularJS 中&#xff0c;事件处理是构建交互式 Web 应用程序的关键部分。本文将深入探讨 AngularJS 中的事件&#xff0c;包…

exchange.hpp交换机模块

一.Exchange相关类介绍 二.Exchange类的实现 交换机类型 对于 RabbitMQ 来说, 主要⽀持四种交换机类型&#xff1a; • Direct • Fanout • Topic • Header 其中 Header 这种⽅式⽐较复杂, ⽐较少⻅。常⽤的是前三种交换机类型&#xff0c;项⽬中也主要实现这三种 •…

docker拉取MySQL后数据库连接失败解决方案

如果数据库连接失败&#xff0c;检查以下几个地方&#xff1a; 1&#xff1a;防火墙&#xff0c;查看防火墙是否打开&#xff1a; systemctl status firewalld 关闭状态&#xff1a; 开启状态&#xff1a; 如果是开启状态&#xff0c;则很有可能是防火墙拦截掉了3306端口的访问…

使用Anaconda安装多个版本的Python并与Pycharm进行对接

1、参考链接 Anaconda安装使用教程解决多Python版本问题_anaconda安装多个python版本-CSDN博客 基于上面的一篇博客的提示&#xff0c;我做了尝试。并在Pycharm的对接上做了拓展。 2、首先安装Anaconda 这个比较简单&#xff0c;直接安装即可&#xff1a; 3、设置conda.exe的…

振德医疗选择泛微千里聆RPA,助力电商、人事业务流程自动化

振德医疗用品股份有限公司成立于1994年&#xff0c;中国A股上市公司&#xff0c;是医用敷料和感控防护产品主要的供应商之一。 &#xff08;图片素材来自振德医疗官网&#xff09; 振德医疗的业务在线上线下齐发力。目前拥有5个国内生产基地&#xff0c;3个海外工厂&#xff0…

【AI】简单了解人工智能的三个飞跃

人工智能&#xff1a;推理能力的实质性飞跃 我们说起人工智能&#xff0c;目前大部分都在说大模型&#xff0c;特别是LLM的相关能力。 在科技日新月异的今天&#xff0c;人工智能&#xff08;AI&#xff09;正以前所未有的速度发展&#xff0c;其在众多领域的应用和突破令人瞩…