html css 仿微信底部自定义菜单

来源:互联网 发布:我对网络教育的评价 编辑:程序博客网 时间:2024/05/10 09:51

         最近几个月一直从事微信开发,从刚开始的懵懂渐渐成长了一点。今天觉得微信底部自定义菜单,如果能在html的页面上也能显示就好了.

记得以前看过某个网页有类似效果.查找了该网页的css.  ok现在html css 实现微信自定义菜单效果.

不多说直接上代码。

/** * 仿微信自定义菜单 *  * @author xuyw * @email xyw10000@163.com * @date 2014-07-27 */


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html> <head>  <title> New Document </title>  <meta name="Generator" content="EditPlus">  <meta name="Author" content="">  <meta name="Keywords" content="">  <meta name="Description" content="">  <link rel="stylesheet" type="text/css" href="menu.css" media="all"> </head> <body> <div class="bg"><img src="imgs/home-default17.jpg" width="100%" height="100%;"></div><div data-role="widget" data-widget="nav4" class="nav4"><nav><div id="nav4_ul" class="nav_4"><ul class="box"><li><a href="javascript:;" class=""><span>关于我们</span></a><dl><dd><a href="#"><span>电话</span></a></dd><dd><a href="#"><span>地址</span></a></dd><dd><a href="#"><span>在线客服</span></a></dd><dd><a href="#"><span>在线QQ</span></a></dd></dl></li><li><a href="javascript:;" class=""><span>电商</span></a><dl><dd><a href="#"><span>微信会员卡</span></a></dd><dd><a href="#"><span>微社区</span></a></dd><dd><a href="#"><span>微投票</span></a></dd><dd><a href="#"><span>微调研</span></a></dd></dl></li><li><a href="javascript:;" class="on"><span>会员专区</span></a><dl><dd><a href="#"><span>微商城</span></a></dd><dd><a href="#"><span>微餐饮</span></a></dd><dd><a href="#"><span>微团购</span></a></dd><dd><a href="#"><span>微汽车</span></a></dd></dl></li></ul></div></nav><div id="nav4_masklayer" class="masklayer_div on"> </div><script src="nav4.js"></script><script type="text/javascript">nav4.bindClick(document.getElementById("nav4_ul").querySelectorAll("li>a"), document.getElementById("nav4_masklayer"));</script></div> </body></html>

css

*{padding:0; margin:0;}.bg {position: absolute;z-index: -1;top: 0;left: 0;right: 0;bottom: 0;opacity: 0.8;}ul, ol, li, dl {list-style-type: none;}.box {width: 100%;display: -webkit-box;display: -moz-box;-webkit-box-orient: horizontal;-moz-box-orient: horizontal;-webkit-box-sizing: border-box;-moz-box-sizing: border-box;}.box > * {-webkit-box-flex: 1;-moz-box-flex: 1;}a:link, a:visited {color: #575757;text-decoration: none;}a {text-decoration: none;-webkit-tap-highlight-color: rgba(0, 0, 0, 0.35);}a:link, a:visited {color: #575757;text-decoration: none;}a {text-decoration: none;-webkit-tap-highlight-color: rgba(0, 0, 0, 0.35);}.nav4{height:45px;}.nav4 ul{position:fixed;z-index:200;bottom:0;left:0;width:100%}.nav4 li{border:1px solid rgba(190,190,190,1);height:45px;border-bottom:0;border-right:0;position:relative;-webkit-box-shadow:inset 0 0 3px #fff;}.nav4 li:nth-of-type(1){border-left;0;}.nav4 li>a{font-size:15px;-webkit-box-sizing:border-box;box-sizing:border-box;/*border:1px solid #f9f8f9;*/-webkit-tap-highlight-color:rgba(0,0,0,0);border-bottom:0;display:block;line-height:45px;text-align:center;background:-webkit-gradient(linear, 0 0, 0 100%, from(#f1f1f1), to(#dcdcdc), color-stop(35% ,#ededed), color-stop(50%, #e3e3e3) );}.nav4 li>a:only-child span{background:none;padding-left:0;}.nav4 li>a.on + dl{display: block;}.nav4 li>a span{color: #4f4d4f;display: inline-block;padding-left: 15px;background: url(imgs/1.svg#2) no-repeat 4px 18px;-webkit-background-size: 9px auto;text-shadow:0px 1px 0px #ffffff;}/***********************/.nav4 dl{display:none;position:absolute;z-index:220;bottom:60px;left:50%;width:100px;margin-left:-50px;background:red;/*min-height:100px;*/background:#e4e3e2;/*border:1px solid #afaeaf;*/border-radius:5px;-webkit-box-shadow:inset 0 0 3px #fff;background:url(imgs/2.svg#3) no-repeat center center;-webkit-background-size:100%;background-size:100%;}/*, .nav4 dl:after*/.nav4 dl:before{content:"";display:inline-block;position:absolute;z-index:240;bottom:0;left:50%;/*width:0;height:0;border:8px solid red;border-color:#afaeaf transparent transparent transparent;margin-left:-8px;margin-bottom:-16px;*/width:10px;height:8px;background: url(imgs/1.svg#2) no-repeat center -55px;-webkit-background-size: 10px auto;bottom: -7px;margin-left: -5px;}/*.nav4 dl:after{z-index:241;border-color:#e4e3e2 transparent transparent transparent;margin-bottom:-15px;}*/.nav4 dl dd{line-height:45px;text-align:center;background:-webkit-gradient(linear, 0 0, 100% 0, from(rgba(194,194,194,0.8)), to(rgba(194,194,194,0.8)), color-stop(50%, rgba(194,194,194,0.8)));background-size:80% 1px;background-repeat:no-repeat;background-position: center bottom;/*background: url(imgs/3.svg#4) no-repeat center bottom;-webkit-background-size:100px 1px;*/}.nav4 dl dd:last-of-type{background:none;}.nav4 dl dd a{font-size: 15px;display:block;color:#4f4d4f;text-shadow:0px 1px 0px #ffffff;white-space: pre;overflow: hidden;text-overflow: ellipsis;}.nav4 .masklayer_div{display: none;position: fixed;top: 0;left: 0;width: 100%;height: 100%;z-index: 180;background: rgba(0,0,0,0);}.nav4 .masklayer_div.on{display: block;}
js

var nav4 =(function(){bindClick = function(els, mask){if(!els || !els.length){return;}var isMobile = "ontouchstart" in window;for(var i=0,ci; ci = els[i]; i++){ci.addEventListener("click", evtFn, false);}function evtFn(evt, ci){ci =this;for(var j=0,cj; cj = els[j]; j++){if(cj != ci){console.log(cj);cj.classList.remove("on");}}if(ci == mask){mask.classList.remove("on");return;}switch(evt.type){case "click":var on = ci.classList.toggle("on");mask.classList[on?"add":"remove"]("on");break;}}mask.addEventListener(isMobile?"touchstart":"click", evtFn, false);}return {"bindClick":bindClick};})();


微信自定义菜单

效果图

附上下载链接 http://download.csdn.net/detail/a714115852/7684935

最后欢迎大家一起学习共同进步


5 2
原创粉丝点击