2019独角兽企业重金招聘Python工程师标准>>>

下面我们一起来看看实现这款CSS3下拉菜单的过程和源码,代码比较简单,主要由HTML和CSS实现,并不需要JavaScript。

<div class="container"><div class="menu style-1"><ul class="menu">    <li><a href="#">Home</a></li><li><a href="#" class="arrow">Categories</a><div class="mega-menu full-width"><div class="col-1"><h4><a href="#">Graphic Design</a></h4><ol><li><a href="#">Design</a></li><li><a href="#">Logo Design</a></li><li><a href="#">Tutorials</a></li>                        <li><a href="#">Mehndi Designs</a></li><li><a href="#">Vector Graphics</a></li><li><a href="#">Wallpapers</a></li></ol></div><div class="col-1"><h4><a href="#">Web Design</a></h4><ol><li><a href="#">Website Design</a></li><li><a href="#">HTML5 &amp; CSS3</a></li><li><a href="#">jQuery</a></li><li><a href="#">Javascript</a></li><li><a href="#">Coding</a></li></ol></div><div class="col-1"><h4><a href="#">Freebies</a></h4><ol><li><a href="#">Free Fonts</a></li><li><a href="#">Icons</a></li><li><a href="#">Free PSD Files</a></li><li><a href="#">PSD Templats</a></li><li><a href="#">Software &amp; Utilities</a></li></ol></div><div class="col-1"><h4><a href="#">Inspiration</a></h4><ol><li><a href="#">Business Cards</a></li><li><a href="#">Photography</a></li><li><a href="#">Poster Design</a></li><li><a href="#">Typography</a></li><li><a href="#">Illustration Art</a></li></ol></div><div class="col-1"><h4><a href="#">Wordpress</a></h4><ol><li><a href="#">Wordpress Themes</a></li><li><a href="#">Wordpress Plugins</a></li></ol></div><div class="col-1"><h4><a href="#">Technology</a></h4><ol><li><a href="#">Apple</a></li><li><a href="#">Google</a></li><li><a href="#">Facebook</a></li>                        <li><a href="#">iPhone Games</a></li><li><a href="#">iPhone Apps</a></li></ol></div></div></li><li><a href="#">Advertise</a></li><li><a href="#">Write For Us</a></li><li><a href="#">Contact Us</a></li><li>
<div id="sidesearch">
<form id="sitesearchform" style="display:inline" method="get" action="http://js.itivy.com/?">
<fieldset> <input class="sidesearch_input" type="text" value="e.g: Web Design" onfocus="if (this.value == 'e.g: Web Design') {this.value = '';}"  x-webkit-speech="" onwebkitspeechchange="transcribe(this.value)" onblur="if (this.value == '') {this.value = 'e.g: Web Design';}" name="s" id="s"><input type="image" class="sidesearch_submit" src="data:images/sidesearchsubmit.png" />
</fieldset></form>
</div></li><li class="right"><a href="#" class="arrow">Follow Us</a><ul><li><a href="#" class="rss" title="Subscribe to RSS">RSS</a></li><li><a href="#" class="twitter" title="Follow us on Twitter">Twitter</a></li><li><a href="#" class="facebook" title="Follow us on Facebook">Facebook</a></li><li><a href="#" class="googleplus" title="Follow us on Google+">Google+</a></li><li><a href="#" class="pinterest" title="Follow us on Pinterest">Pinterest</a></li><li><a href="#" class="stumbleupon" title="Follow us on Stumbleupon">Stumbleupon</a></li></ul></li></ul></div>
</div>

这里利用了经典的div结构和ol li列表结构,来构造可下拉展示的菜单。

.menu{display:block;position:relative}
.menu,
.menu ul{margin:0;padding:0;list-style:none;position:relative; background-color:#ffffff;border: 1px solid #E1E1E1; border-radius: 5px;}
.menu ul a{float:left}
.menu ul ul a{float:none;}
.menu
.mega-menu a{float:none;padding:3px;}
.menu ul ul,
.menu
.mega-menu,
.menu
.mega-menu ol li{opacity:0;visibility:hidden;display:none ! important/9;-webkit-transition:opacity 150ms ease-in-out;-moz-transition:opacity 150ms ease-in-out;-o-transition:opacity 150ms ease-in-out;-ms-transition:opacity 150ms ease-in-out;transition:opacity 150ms ease-in-out}
.menu li:hover>ul,
.menu li:hover>
.mega-menu,
.menu li:hover>
.mega-menu ol li{opacity:1;visibility:visible;display:block ! important/9}
.menu ul:after{content:"";clear:both;display:block}
.menu ul li{float:left;-webkit-transition:all 150ms ease-in-out;-moz-transition:all 150ms ease-in-out;-o-transition:all 150ms ease-in-out;-ms-transition:all 150ms ease-in-out;transition:all 150ms ease-in-out}
.menu ul li a{display:block;padding:14px 20px 15px 20px;color:#fff;text-decoration:none; border-right: 1px solid rgba(f, f, f, 0.9);
box-shadow: 1px 0 0 rgba(255, 255, 255, 0.1);}
.menu .arrow:after{content:"";float:right;text-align:right;width:0;height:0;display:block;border-left:3px solid rgba(0,0,0,0);border-right:3px solid rgba(0,0,0,0);border-top:3px solid #fff;top:9px;margin:0 0 0 5px;position:relative;border-left:3px solid transparent/9;border-right:3px solid transparent/9}
.menu ul li ul li .arrow:after{border-top:3px solid transparent;border-bottom:3px solid transparent;border-left:3px solid #bbb;margin:-2px 0 0 5px}
.menu i{font-size:14px;font-style:normal;float:left;margin:4px 4px 0 -2px;line-height:14px;padding:0}
.menu .right{float:right;}
.menu .right ul,
.menu .right
.mega-menu{right:0}
.menu ul ul{background:#fff;border:1px solid #e0e0e0;border-top:0;border-bottom:0;position:absolute;top:100%;width:170px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.04);box-shadow:0 1px 1px rgba(0,0,0,.04)}
.menu ul ul ul{position:absolute;left:100%;border-top:1px solid #e0e0e0;top:-1px}
.menu ul ul li a{padding:8px 12px;color:#777;border-bottom:1px solid #e4e4e4; background:#FFFFFF;}
.menu ul ul li{float:none;position:relative;-webkit-transition:none;-moz-transition:none;-o-transition:none;-ms-transition:none;transition:none}
.menu ul ul li a:active,
.menu ul ul li:hover{background:#f5f5f5}
.menu ul ul li{background:#fff}
.mega-menu{position:absolute;top:100%;padding:18px 11px;background-color:#fff;border:1px solid #e0e0e0;border-top:none;color:#777;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.04);box-shadow:0 1px 1px rgba(0,0,0,.04);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}
.mega-menu ol{list-style:none;padding:0}
.mega-menu ol li{width:100%}
.mega-menu ol li:hover,
.mega-menu ol li a{color:#777;font-size:14px;padding:0;background-color:#fff;background-image:none;}
.mega-menu ol li a:hover{color:#505050; background-color:#edf1f8; padding-left:8px;}
.mega-menu div h4{font-size:16px;color:#404040;border-bottom:1px solid #e4e4e4;padding:0 0 8px 0;margin:0 0 10px 0; font-weight:normal}
.mega-menu div h4 a{color:#000;}
.mega-menu .col-1{width:135px}
.mega-menu .col-2{width:288px}
.mega-menu .col-3{width:441px}
.mega-menu .col-4{width:594px}
.mega-menu .col-5{width:747px}
.mega-menu .col-6{width:900px}
.mega-menu .col-1,
.mega-menu .col-2,
.mega-menu .col-3,
.mega-menu .col-4,
.mega-menu .col-5,
.mega-menu .col-6{float:left;margin:0 9px}
.mega-menu.full-width{left:0;width:100%;padding:18px 0}.full-width .col-1{width:14.1%}.full-width .col-2{width:30.4%}.full-width .col-3{width:46.7%}.full-width .col-4{width:63%}.full-width .col-5{width:79.3%}.full-width .col-6{width:95.6%}.full-width .col-1,.full-width .col-2,.full-width .col-3,.full-width .col-4,.full-width .col-5,.full-width .col-6{float:left;margin:0 0 0 2.2%}@media only screen and (max-width: 767px){
.menu ul li{width:100%;cursor:pointer}
.menu ul li{position:relative}
.menu
.mega-menu ol li{height:0}
.menu li:hover>
.mega-menu ol li{height:auto}
.mega-menu,
.menu ul ul{z-index:100}
.menu ul ul{width:100%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}
.menu ul ul ul{left:0}
.menu ul ul li:hover>ul{position:relative;border:none;border-top:1px solid #e4e4e4;-webkit-box-shadow:none;box-shadow:none}
.menu ul li ul li .arrow:after{border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid #bbb;margin:0}
.mega-menu{padding:18px 0}
.mega-menu ol li:last-child{margin:0 0 20px 0}
.menu .col-1,.full-width .col-1,
.menu .col-2,.full-width .col-2,
.menu .col-3,.full-width .col-3,
.menu .col-4,.full-width .col-4,
.menu .col-5,.full-width .col-5,
.menu .col-6,.full-width .col-6{float:left;margin:0 0 0 5%;width:90%}}
.style-1
.menu, .style-1
.menu ul li  { background-color: #446cb3; background-image: linear-gradient(bottom, rgba(0,0,0, 0) 50%, rgba(255,255,255, 0.04) 0%); background-image: -o-linear-gradient(bottom, rgba(0,0,0, 0) 50%, rgba(255,255,255, 0.04) 0%); background-image: -moz-linear-gradient(bottom, rgba(0,0,0, 0) 50%, rgba(255,255,255, 0.04) 0%); background-image: -webkit-linear-gradient(bottom, rgba(0,0,0, 0) 50%, rgba(255,255,255, 0.04) 0%); background-image: -ms-linear-gradient(bottom, rgba(0,0,0, 0) 50%, rgba(255,255,255, 0.04) 0%); } .style-1
.menu ul li:hover { background-color: #eb4e01; background-image: linear-gradient(bottom, rgba(0,0,0, 0) 50%, rgba(255,255,255, 0.08) 0%); background-image: -o-linear-gradient(bottom, rgba(0,0,0, 0) 50%, rgba(255,255,255, 0.08) 0%); background-image: -moz-linear-gradient(bottom, rgba(0,0,0, 0) 50%, rgba(255,255,255, 0.08) 0%); background-image: -webkit-linear-gradient(bottom, rgba(0,0,0, 0) 50%, rgba(255,255,255, 0.08) 0%); background-image: -ms-linear-gradient(bottom, rgba(0,0,0, 0) 50%, rgba(255,255,255, 0.08) 0%); }a.rss:hover{ background:#ffaa31; color:#fff; padding-left:20px;}
a.twitter:hover{background:#07beed; color:#fff; padding-left:20px;}
a.facebook:hover{background:#314d91; color:#fff; padding-left:20px;}
a.googleplus:hover{background:#2d2d2d; color:#fff; padding-left:20px;}
a.pinterest:hover{background:#cd1d1f; color:#fff; padding-left:20px;}
a.stumbleupon:hover{background:#ec4b24; color:#fff; padding-left:20px;}

CSS代码相对比较复杂,但是也没有用到复杂的CSS3属性,只是用到了圆角和阴影。

转载于:https://my.oschina.net/u/1170536/blog/345339

html+css3实现二级下拉菜单相关推荐

  1. CSS3蓝色宽屏二级下拉菜单DEMO演示

    2019独角兽企业重金招聘Python工程师标准>>> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transition ...

  2. 纯CSS3实现宽屏二级下拉菜单

    今天我们要来分享一款基于纯CSS3的宽屏二级下拉菜单,这款菜单的子菜单在展开的时候是很宽敞的,菜单项中可以自定义格式的内容,非常实用,也很大气.由于是用纯CSS3实现,所以这款下拉菜单不用运行Java ...

  3. jQuery和CSS3超酷二级下拉菜单插件

    这是一款效果很酷又简单实用的 jQuery二级下拉菜单特效,该特效在点击触发按钮后,二级下拉菜单会向下滑动覆盖原来的主菜单,关闭后二级下拉菜单又向上滑动回去,二级菜单不占用多余的空间. 这个菜单插件是 ...

  4. 前端的小玩意(5)——用dojo写的二级下拉菜单自动添加功能

    先上DEMO, 虽然丑,那是因为零级按钮的界面太丑了,图标也丑┑( ̄Д  ̄)┍ 这两个优化后会好很多,毕竟美观不是我的特长嘛 DEMO链接: http://download.csdn.net/deta ...

  5. 动态二级下拉菜单html,js实现简洁大方的二级下拉菜单效果代码

    本文实例讲述了js实现简洁大方的二级下拉菜单效果代码.分享给大家供大家参考.具体如下: 这是一款简洁大方的二级下拉菜单,菜单的颜色自己根据需要重新定义吧,这里仅给大家提供一种制作二级菜单的思路,整体效 ...

  6. 绑定dictionary 给定关键字不再字典中_VBA数组与字典解决方案第51讲:字典嵌套及二级下拉菜单的制作...

    大家好,今日我们继续讲解VBA数组与字典解决方案,今日讲解第51讲:对字典嵌套的理解及二级下拉菜单的制作. 在讲字典的时候,我反复说明,字典看视非常简单,由于它具有直达性可以省略去我们大量的循环查找代 ...

  7. 绑定dictionary 给定关键字不再字典中_对字典嵌套的理解及二级下拉菜单的制作...

    大家好,今日我们继续讲解VBA数组与字典解决方案,今日讲解第51讲:对字典嵌套的理解及二级下拉菜单的制作. 在讲字典的时候,我反复说明,字典看视非常简单,由于它具有直达性可以省略去我们大量的循环查找代 ...

  8. html二级下拉菜单模板,基于jQuery实现二级下拉菜单效果

    本文通过代码实例详细介绍一下简单的二级下拉菜单是如何实现的,当然还有更为复杂的二级菜单,不过先学会如何制作简单的,分享给大家供大家参考,具体内容如下 代码如下: 下拉菜单 nav a{ text-de ...

  9. android二级菜单实现,Android编程实现二级下拉菜单及快速搜索的方法

    本文实例讲述了Android编程实现二级下拉菜单及快速搜索的方法.分享给大家供大家参考,具体如下: 一.我们要做什么? 上面有个搜索框,下面是一个二级下拉菜单. 输入查询内容,下面列表将显示查询结果. ...

最新文章

  1. 使用RedisDesktopManager客户端无法连接Redis服务器问题解决办法
  2. python关联分析代码_1行代码实现关联分析(Apriori)算法
  3. NYOJ 460 项链
  4. Shell变量:Shell变量的定义、删除变量、只读变量、变量类型
  5. 青蛙跳台(含变种)及汉诺塔递归,母牛生小牛
  6. Kaggle : Using a Convolutional Neural Network for classifying Cats vs Dogs
  7. app登录界面背景 css_计算机毕业设计中Java web实现简登录页面(MyBatis+jsp+servlet+html+css+javascript)...
  8. 宝塔服务器管理助手Linux面版-使用教程
  9. java 单链表反转_Java实现单链表翻转详解
  10. python删除长目录_python中删除目录名两端
  11. jsp高校科研管理系统servlet设计
  12. 马原(2023版)导论笔记
  13. kafka消息服务的producer、broker、consumer的配置
  14. pdf合到一起java_将多个PDF文件合并/转换为一个PDF
  15. 编程之美-2.3-寻找发帖“水王”
  16. 骨龄预测代码学习(二)
  17. 参考 | Windows安装cython-bbox
  18. Linux 启动jar项目相关命令(解决关闭Linux终端,程序自动停止问题)
  19. linux无缝拼接文件,在Makefile中无缝连接字符串
  20. CVX用户指南之半定编程模式

热门文章

  1. SQL 查询总是先执行SELECT语句吗?你们都错了!
  2. 研究生论文“盲审”“查重”再加码!毕业或将变的更加困难
  3. 用脚写字考上985!无臂硕士开学报到,宿舍设计太细节了……
  4. 华为提出DyNet:动态卷积
  5. 吴恩达机器学习入门 2018 高清视频公开,还有习题解答和课程拓展,网友:找不到理由不学!...
  6. 微盟创始人孙涛勇回应员工删库;字节跳动推“头条搜索”独立 App;C++ 20 规范完成| 极客头条...
  7. MIT将AI引入中学课堂,除了设计AI系统,还要学生思考背后的伦理
  8. 【漫画】以后在有面试官问你AVL树,你就把这篇文章扔给他。
  9. Scrapy框架的日志信息与配置信息
  10. 循环神经网络实现文本情感分类之Pytorch中LSTM和GRU模块使用