CSS3下拉菜单实现

devtools/2024/10/18 7:46:52/

导航菜单:

<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/devtools/93791.html

相关文章

Vue3 插槽用法详解

插槽的概念 你可以把插槽想象成是预留给父组件填充内容的占位符。这样一来&#xff0c;父组件就可以根据需要插入 HTML 结构或者其他组件了。 插槽分为&#xff1a;匿名插槽、具名插槽、作用域插槽 匿名插槽 当子组件中有多个插槽时&#xff0c;父组件传入的内容会填充到子…

解决 MacOS 连接公司 VPN 成功但是不能网络的问题

目录 解决办法2024 Mac mini 爆料 解决办法 操作比较简单&#xff0c;修改配置文件即可&#xff08;如果没有则需要手动创建&#xff09;。 sudo vim /etc/ppp/options在此文件下&#xff0c;加入 plugin L2TP.ppp&#xff1a; plugin L2TP.ppp如果文件里有l2tpnoipsec&…

搭建知识中台:让企业告别低效率

在当今这个信息爆炸、知识更新日新月异的时代&#xff0c;企业面临着前所未有的挑战与机遇。如何在浩瀚的信息海洋中高效筛选、整合并利用知识资源&#xff0c;成为决定企业竞争力的关键因素之一。因此&#xff0c;搭建知识中台&#xff0c;构建企业知识管理的核心枢纽&#xf…

Git相关教程

版本控制 学习目标 理解版本控制的必要性了解常用的版本控制方式熟悉 Git 的使用方法 什么是版本控制 可以把一个版本控制系统理解为一个“数据库”&#xff0c;在需要的时候&#xff0c;它可以帮你完整地保存一个项目的快照。当你需要查看一个之前的快照&#xff08;称之为…

Hadoop大集群配置文档-粗略版-3万字长文 (包括hive,zookeeper,hbase,flume等中间件和mysql等)

先填一下上次许诺的坑&#xff1a; &#xff08;许诺的那篇文章链接如下&#xff09; 如何用sql在1分钟从1T数据中精准定位查询&#xff1f;Hive离线数仓 Spark分析-CSDN博客文章浏览阅读1.2k次&#xff0c;点赞38次&#xff0c;收藏14次。在大数据-Hadoop体系中 &#xff0c;…

Django数据库多对多

3.17 Django数据库多对多 在Django中,多对多关系通常通过一个自动创建的中间模型来实现。这个中间模型包含了两个外键,分别指向多对多关系的两端。 示例: #创建models class Auther(models.Model):name=models.CharField(verbose_name=作者,max_length=32)class Book(mod…

Python 绘图进阶之箱线图:揭示数据的分布和异常值

Python 绘图进阶之箱线图&#xff1a;揭示数据的分布和异常值 引言 在数据分析中&#xff0c;理解数据的分布情况和识别异常值是非常重要的任务。箱线图&#xff08;Box Plot&#xff09;作为一种简洁有效的统计图表&#xff0c;能够直观地展示数据的中位数、四分位数、极值以…

IDEA关键词全局检索-之jar包

正常没有下载到源码的jar包&#xff0c;是无法检索到.class编译文件中内容的&#xff1a; repository本地仓库中&#xff0c;也是没有源码的 检索步骤&#xff1a; 1、首先&#xff0c;下载源码 - 可以配置maven自动下载所有jar包的源码&#xff08;再同样配置File-NewProje…