当前位置: 首页 > news >正文

CSS3下拉菜单实现

导航菜单:

<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.lryc.cn/news/422941.html

相关文章:

  • Mysql8.3.0排序导致分页数据错乱
  • 漏洞复现-Cacti命令执行漏洞 (CVE-2022-46169)
  • 【Ajax使用说明】Ajax、Axios以及跨域
  • IIS网站搬家工具WebDeploy(把网站迁移去另一台服务器)
  • SQL Server 2022的游标
  • 「11月·香港」第三届人工智能、人机交互和机器人国际学术会议(AIHCIR 2024)
  • 【redis】springboot 用redis stream实现MQ消息队列 考虑异常ack重试场景
  • 初识IDEA
  • zigbee笔记:十、ZStack(2.3.0-1.4.0)的OSAL使用分析
  • SpringBoot响应式编程(1)Reactor核心
  • Java后端处理前端字符串与 JSON 数据:安全拼接与转义技巧
  • 一文搞懂bfs,dfs和高级图算法
  • 【Rust光年纪】Rust异步编程利器:异步DNS、高性能Web服务器一网打尽
  • 04学生管理系统(栈)
  • 我们如何在centos上部署批量管理工具ansible
  • 如何评估前端代码审查培训计划的有效性?
  • 使用nvm切换Node.js版本
  • x264 编码器 PSNR算法源码分析
  • 开源web版3D展示工具Online3DViewer
  • 白骑士的Matlab教学实战项目篇 4.2 信号与图像处理项目
  • 复现、并改进open-mmlab的mmpose详细细节
  • 编写兼容Python2.x与3.x代码
  • 比特币8.12学习问题
  • 解析 Vue 中的app.version、 app.provide 与 app.runWithContext :原理、应用与实例剖析
  • Ubuntu server 命令行跑selenium
  • 刚刚,模糊测试平台SFuzz受到行业认可
  • 数据结构与算法——DFS(深度优先搜索)
  • 基于lambda简化设计模式
  • 揭秘! 经纬恒润“车路云一体化”方案研发服务背后的科技驱动力
  • Redis操作--RedisTemplate(二)StringRedisTemplate