当前位置:网站首页>动态菜单,自动对齐
动态菜单,自动对齐
2022-06-24 19:39:00 【高彬】
描述:类似微信公众号菜单样式,子菜单动态生成数量不固定,样式如下:

html
<nav class="wx_menu">
<dl>
<dt>短信/资费</dt>
<dd>
<ul class="dropdown-menu">
<li><a href="/wx/m/sms">短信</a></li>
<li><a href="/wx/m/data">流量</a></li>
<li><a href="/wx/m/price">资费</a></li>
<li><a href="/wx/m/partner">合伙人</a></li>
</ul>
</dd>
</dl>
<dl>
<dt>
推广/兑换
</dt>
<dd>
<ul class="dropdown-menu">
<li><a href="/wx/m/partner_plan">积分介绍</a></li>
<li><a href="/WX/m/Extension/@ViewBag.MySharedInfo">推广会员</a></li>
<li><a href="/wx/wx_jfdd/shop">兑换礼品</a></li>
<li><a href="/wx/WX_FXJL/exshare">兑换积分</a></li>
</ul>
</dd>
</dl>
<dl>
<dt>我的</dt>
<dd>
<ul class="dropdown-menu">
<li><a href="/wx/WX_JFJL/myscore">积分</a></li>
<li><a href="/wx/WX_FXJL/myshare">分享值</a></li>
<li><a href="/WX/WX_HHR/mymember">会员</a></li>
<li><a href="/WX/WX_HHR/myinfo">资料</a></li>
<li><a href="/WX/WX_HHR/myaddress">收件地址</a></li>
</ul>
</dd>
</dl>
</nav>
css(less)
.wx_menu {
width: 100%;
position: fixed;
bottom: 0;
left: 0;
right: 0;
margin: auto;
z-index: 200000;
background-color: transparent;
text-align: center;
dl {
background-color: #fff;
border: solid 1px #ddd9d9;
text-align: center;
padding: 10px 0;
margin-bottom: 4px;
position: relative;
display: inline-block;
width: 30%;
dd {
display: none;
width: 100%;
margin: 0 0 6px 0;
padding: 0;
transition: 1s;
animation: flipInX,.4s,1;
position: absolute;
top: auto;
bottom: 100%;
}
}
ul {
display: block;
width: 100%;
margin: 0;
padding: 0;
box-shadow: 0,2px,4px,#000;
li {
display: block;
padding: 12px 0;
text-align: center;
background-color: #fff;
width: 100%;
box-sizing: border-box;
border: 1px solid #e0e0e0;
}
li:not(:last-child) {
border-bottom: none;
}
}
}
js
$(function () {
$(".wx_menu").find("dt").click(function () {
var _obj = $(this);
if (_obj.next("dd").css("display") == "block") {
_obj.next("dd").css({ "display": "none" });
} else {
_obj.next("dd").css({ "display": "block" }).parent().siblings().find("dd").hide();
}
});
});本例是底部对齐,关键样式是: top: auto;bottom: 100%;
边栏推荐
- Idea close global search box
- 问题求解——嵌套列表
- The ktp900f mobile download program of the fail safe mobile panel prompts that the download cannot be performed, and the target device is running or not in the transmission mode
- envoy获取客户端真实IP
- See how sparksql supports enterprise level data warehouse
- Learn more about the practical application of sentinel
- Basic principles of layer 2 switching
- Idea global search replace shortcut key
- 证件照处理
- vulnhub Vegeta: 1
猜你喜欢

Redis-跳表

Development specification - parameter verification exception, exception return prompt section

Seven principles of software design

vulnhub Vegeta: 1

【个人实验报告】

Technology inventory: past, present and future of Message Oriented Middleware

机器学习编译入门课程学习笔记第一讲 机器学习编译概述

See how sparksql supports enterprise level data warehouse

The ktp900f mobile download program of the fail safe mobile panel prompts that the download cannot be performed, and the target device is running or not in the transmission mode

Analyze the implementation process of oauth2 distributed authentication and authorization based on the source code
随机推荐
Genesis public chain and a group of encryption investors in the United States gathered in consensus 2022
问题求解——嵌套列表
Power system | IEEE paper submission process
Valueerror: cannot take a larger sample than population when 'replace=false‘
Database transaction Transanction
New, Huawei cloud Kaitian apaas
2022-06-10 工作记录--JS-获取到某一日期N天后的日期
Problèmes de concurrence dans l'allocation de mémoire en tas
seven
ThreadLocal memory leak
Heavyweight! Fada is listed as a "specialized and new" enterprise
Technology inventory: Technology Evolution and Future Trend Outlook of cloud native Middleware
堆内存分配的并发问题
LeetCode Algorithm 剑指 Offer 52. 两个链表的第一个公共节点
Data center basic network platform
结合源码剖析Oauth2分布式认证与授权的实现流程
Genesis公链与美国一众加密投资者齐聚Consensus 2022
Interrupt, interrupted, isinterrupted differences
Rip protocol of dynamic routing protocol
Future development of education industry of e-commerce Express