Grade 无限等级菜单
基本用法
使用ul+li构建菜单树结构,借助css中的hover伪类实现简单无限等级菜单。默认是下拉菜单。
基本结构是ax-grade + ax-grade-wrapper + label + arrow。
<div style="padding:36px;text-align: center">
<span class="ax-grade">无限等级菜单
<ul class="ax-grade-wrapper">
<li>
<div><a href="###" label>用户管理</a></div>
</li>
<li>
<div><a href="###" label>信息管理</a><i class="ax-iconfont ax-icon-right" arrow></i></div>
<ul>
<li>
<div><a href="###" label>体育新闻</a></div>
</li>
<li>
<div><a href="###" label>时政新闻</a><i class="ax-iconfont ax-icon-right" arrow></i></div>
<ul>
<li>
<div><a href="###" label>增加</a></div>
</li>
<li>
<div><a href="###" label>删除</a></div>
</li>
<li>
<div><a href="###" label>修改</a></div>
</li>
</ul>
</li>
<li>
<div><a href="###" label>娱乐新闻</a></div>
</li>
</ul>
</li>
<li>
<div selected><a href="###" label>体育新闻</a></div>
</li>
<li>
<div><a href="###" label>权限配置</a></div>
</li>
<li>
<div><a href="###" label>参数配置</a></div>
</li>
</ul>
</span>
</div>
菜单位置
菜单一共支持四个位置,通过placement属性设置菜单位置,可使用的值有:right、bottom-start、bottom-end和bottom(默认)。
<div class="ax-row">
<div class="ax-col ax-col-6" style="padding:36px;text-align: center">
<span class="ax-grade" placement="bottom-start">bottom-start
<ul class="ax-grade-wrapper">
<li>
<div><a href="###" label>用户管理</a></div>
</li>
<li>
<div><a href="###" label>信息管理</a></div>
</li>
<li>
<div selected><a href="###" label>体育新闻</a></div>
</li>
<li>
<div><a href="###" label>权限配置</a></div>
</li>
<li>
<div><a href="###" label>参数配置</a></div>
</li>
</ul>
</span>
</div>
<div class="ax-col ax-col-6" style="padding:36px;text-align: center">
<span class="ax-grade">bottom
<ul class="ax-grade-wrapper">
<li>
<div><a href="###" label>用户管理</a></div>
</li>
<li>
<div><a href="###" label>信息管理</a></div>
</li>
<li>
<div selected><a href="###" label>体育新闻</a></div>
</li>
<li>
<div><a href="###" label>权限配置</a></div>
</li>
<li>
<div><a href="###" label>参数配置</a></div>
</li>
</ul>
</span>
</div>
<div class="ax-col ax-col-6" style="padding:36px;text-align: center">
<span class="ax-grade" placement="bottom-end">bottom-end
<ul class="ax-grade-wrapper">
<li>
<div><a href="###" label>用户管理</a></div>
</li>
<li>
<div><a href="###" label>信息管理</a></div>
</li>
<li>
<div selected><a href="###" label>体育新闻</a></div>
</li>
<li>
<div><a href="###" label>权限配置</a></div>
</li>
<li>
<div><a href="###" label>参数配置</a></div>
</li>
</ul>
</span>
</div>
<div class="ax-col ax-col-6" style="padding:36px;text-align: center">
<span class="ax-grade" placement="right">right
<ul class="ax-grade-wrapper">
<li>
<div><a href="###" label>用户管理</a></div>
</li>
<li>
<div><a href="###" label>信息管理</a></div>
</li>
<li>
<div selected><a href="###" label>体育新闻</a></div>
</li>
<li>
<div><a href="###" label>权限配置</a></div>
</li>
<li>
<div><a href="###" label>参数配置</a></div>
</li>
</ul>
</span>
</div>
</div>
使用图标
将普通图标标签写上legend属性插入label前方即可。
<div style="padding:36px;text-align: center">
<span class="ax-grade">无限等级菜单
<ul class="ax-grade-wrapper">
<li>
<div><i class="ax-iconfont ax-icon-people" legend></i><a href="###" label>用户管理</a></div>
</li>
<li>
<div><i class="ax-iconfont ax-icon-clock" legend></i><a href="###" label>信息管理</a></div>
</li>
<li>
<div selected><i class="ax-iconfont ax-icon-check-o-gap" legend></i><a href="###" label>体育新闻</a></div>
</li>
<li>
<div><i class="ax-iconfont ax-icon-global" legend></i><a href="###" label>权限配置</a></div>
</li>
<li>
<div><i class="ax-iconfont ax-icon-options" legend></i><a href="###" label>参数配置</a></div>
</li>
</ul>
</span>
</div>
多行文字
如果菜单名称比较长也没关系,ax-grade兼容多行文字显示。
<div style="padding:36px;text-align: center">
<span class="ax-grade">无限等级菜单
<ul class="ax-grade-wrapper">
<li>
<div><a href="###" label>雅万高铁沿线车站设计突出印尼元素</a></div>
</li>
<li>
<div><i class="ax-iconfont ax-icon-clock" legend></i><a href="###" label>暑期全国演出超11万场 票房收入破百亿</a><i class="ax-iconfont ax-icon-right" arrow></i></div>
<ul>
<li>
<div><a href="###" label>28岁退役军人和好友救出车祸被困3人</a></div>
</li>
<li>
<div><a href="###" label>破案了,原来瑞幸和茅台的中间商是“塞尚”</a></div>
</li>
</ul>
</li>
<li>
<div selected><i class="ax-iconfont ax-icon-check-o-gap" legend></i><a href="###" label>中国互联网联合辟谣平台2023年8月辟谣榜</a></div>
</li>
</ul>
</span>
</div>
居中排列
菜单默认居左排列,如果用户需要居中排列可对ax-grade-wrapper节点追加ax-align-center属性。
<div style="padding:36px;text-align: center">
<span class="ax-grade">无限等级菜单
<ul class="ax-grade-wrapper ax-align-center">
<li>
<div><a href="###" label>用户管理</a></div>
</li>
<li>
<div><a href="###" label>信息管理</a><i class="ax-iconfont ax-icon-right" arrow></i></div>
<ul>
<li>
<div><a href="###" label>体育新闻</a></div>
</li>
<li>
<div><a href="###" label>时政新闻</a><i class="ax-iconfont ax-icon-right" arrow></i></div>
<ul>
<li>
<div><a href="###" label>增加</a></div>
</li>
<li>
<div><a href="###" label>删除</a></div>
</li>
<li>
<div><a href="###" label>修改</a></div>
</li>
</ul>
</li>
<li>
<div><a href="###" label>娱乐新闻</a></div>
</li>
</ul>
</li>
<li>
<div selected><a href="###" label>体育新闻</a></div>
</li>
<li>
<div><a href="###" label>权限配置</a></div>
</li>
<li>
<div><a href="###" label>参数配置</a></div>
</li>
</ul>
</span>
</div>
下拉小窗
如果不是ul+li结构的菜单,仅仅是下拉小窗,请用div代替ul,对div使用ax-grade-wrapper类,宽度通过style自定义,见效果演示。
无限等级菜单
默认居中小窗!
无限等级菜单
居左小窗!
无限等级菜单
居右小窗!
<div class="ax-row">
<div class="ax-col ax-col-8" style="padding:36px;text-align: center">
<span class="ax-grade">无限等级菜单
<div class="ax-grade-wrapper" style="width:300px;">
默认居中小窗!
</div>
</span>
</div>
<div class="ax-col ax-col-8" style="padding:36px;text-align: center">
<span class="ax-grade" placement="bottom-start">无限等级菜单
<div class="ax-grade-wrapper" style="width:300px;">
居左小窗!
</div>
</span>
</div>
<div class="ax-col ax-col-8" style="padding:36px;text-align: center">
<span class="ax-grade" placement="bottom-end">无限等级菜单
<div class="ax-grade-wrapper" style="width:300px;">
居右小窗!
</div>
</span>
</div>
</div>
