AmazeUI中各种的导航式菜单与解决方法


Posted in HTML / CSS onAugust 19, 2020

与Bootstrap一样,AmazeUI提供的导航式菜单也是喜欢蜷缩在右上角的一个按钮里面,然后一点击就向下拉开一大段距离。这样很不友好。此前《【AmazeUI】手机版页面的顶部导航条Header与侧边导航栏offCanvas》(点击打开链接)是一种解决方案,但是对于一些不使用页面的页面,这种方案则无能无力。

对于此有如下的几种方案可以解决:

一、改造AmazeUI提供的手机端文字横排菜单

AmazeUI提供的手机端文字横排菜单的背景颜色是白色的,字体是蓝色的,没有提供相应的class去改写里面的字体,

我们可以为背景与文字添加一个css,改写其背景与文字颜色

效果如下:

AmazeUI中各种的导航式菜单与解决方法 

代码如下:

<h1>导航菜单-横排文字式</h1>
        <style>
            /*这里是改写文字的颜色*/
            .am-menu-default .am-menu-nav a {
                color:#222;
            }
            /*这里是改写背景的颜色*/
            .am-menu-nav{
                background:#f1f1f1;
            }
        </style>
        <div data-am-widget="menu" class="am-menu  am-menu-default" >
            <a href="javascript: void(0)" class="am-menu-toggle a-in-menu"><i class="am-menu-toggle-icon am-icon-bars"></i></a>
            <!--表示每一个菜单都占3格,也就是在12格1行的布局中占据4格的位置-->
            <ul class="am-menu-nav am-avg-sm-3">
                <!--表示这个项目带下拉菜单-->
                <li class="am-parent">
                    <a href="#">项目1</a>
                    <ul class="am-menu-sub am-collapse am-avg-sm-4">
                        <li><a href="#">项目1-1</a></li>
                        <li><a href="#">项目1-2</a></li>
                        <li><a href="#">项目1-3</a></li>
                        <li><a href="#">项目1-4</a></li>
                        <li><a href="#">项目1-5</a></li>
                        <li><a href="#">项目1-6</a></li>
                    </ul>
                </li>
                <li><a href="#">项目2</a></li>
                <li><a href="#">项目3</a></li>
                <li><a href="#">项目4</a></li>
                <li class="am-parent">
                    <a href="#">项目5</a>
                    <ul class="am-menu-sub am-collapse am-avg-sm-4">
                        <li><a href="#">项目5-1</a></li>
                        <li><a href="#">项目5-2</a></li>
                        <li><a href="#">项目5-3</a></li>
                        <li><a href="#">项目5-4</a></li>
                        <li><a href="#">项目5-5</a></li>
                        <li><a href="#">项目5-6</a></li>
                    </ul>
                </li>
    
            </ul>
        </div>

 二、利用按钮组与下拉按钮

这里运用了解决Bootstrap导航栏的思想,《【Bootstrap】导航栏navbar在IE8上的缺陷与解决方案》(点击打开链接),但是AmazeUI的按钮组与下拉按钮的复合相当不给力。没有提供下拉按钮与按钮复合的按钮组。同时,其栅格化布局也无法约束其下拉按钮的大小,因此,必须自己整几个div,调节其width与margin属性,规范其大小。

效果如下:

AmazeUI中各种的导航式菜单与解决方法

代码如下:

<h1>导航菜单-下拉列表式</h1>
        <style>
            /*让每一个下拉按钮占据的宽度与居中*/
            .am-dropdown{
                width:30%;
                text-align:center;
            }
        </style>
        <!--这里表示一行-->
        <div style="text-align:center; width:100%; margin-left:-1.5%">
            <div class="am-dropdown" data-am-dropdown>
                <button class="am-btn am-btn-primary am-dropdown-toggle" data-am-dropdown-toggle style="width:110%;" >项目1<span class="am-icon-caret-down"></span></button>
                <ul class="am-dropdown-content">
                    <li><a href="#">项目1-1</a></li>
                    <li><a href="#">项目1-2</a></li>
                    <li class="am-divider"></li>
                    <li><a href="#">项目1-3</a></li>
                </ul>
            </div>
            <div class="am-dropdown" data-am-dropdown >
                <button type="button" class="am-btn am-btn-primary" style="width:110%;" onClick="javascript:window.location.href='#'">项目2</button>        
            </div>
            <div class="am-dropdown" data-am-dropdown>
                <button class="am-btn am-btn-primary am-dropdown-toggle" data-am-dropdown-toggle style="width:110%;" >项目3<span class="am-icon-caret-down"></span></button>
                <ul class="am-dropdown-content">
                    <li><a href="#">项目3-1</a></li>
                    <li class="am-divider"></li>
                    <li><a href="#">项目3-2</a></li>
                    <li><a href="#">项目3-3</a></li>
                    <li><a href="#">项目3-4</a></li>
                </ul>
            </div>
        </div>
        <!--搞完一行,必须自己再开一行-->
        <div style="text-align:center; width:100%; margin-left:-1.5%">
            <div class="am-dropdown" data-am-dropdown>    
                <button type="button" class="am-btn am-btn-primary" style="width:110%;" onClick="javascript:window.location.href='#'">项目4</button>
            </div>
            <div class="am-dropdown" data-am-dropdown >
                <button class="am-btn am-btn-primary am-dropdown-toggle" data-am-dropdown-toggle style="width:110%;" >项目5<span class="am-icon-caret-down"></span></button>
                <ul class="am-dropdown-content">
                    <li><a href="#">项目5-1</a></li>                
                    <li><a href="#">项目5-2</a></li>
                    <li class="am-divider"></li>
                    <li><a href="#">项目5-3</a></li>
                    <li><a href="#">项目5-4</a></li>
                </ul>
            </div>
            <div class="am-dropdown" data-am-dropdown>    
                <button type="button" class="am-btn am-btn-primary" style="width:110%;" onClick="javascript:window.location.href='#'">项目6</button>
            </div>
        </div>

这里,每一行最好放置3个组件就好,设置css为text-align:center,还要补上一个margin-left:-1.5%才刚好其居中,width:100%占据一行。

其下的各个div占据30%的宽度。接着的各个按钮、下拉按钮其宽度必须是110%,这样才能刚刚配合好原来的样式,把按钮与下拉按钮符合起来。

其中,里面的li class="am-divider"意为分割线。

三、利用无下拉项目的标签页

其实手机里面的导航真的无须使用下拉项目。下拉菜单在手机屏幕上是很难点的。直接利用标签页设置一个导航。代码也短,用户也不会不满意。关键是AmazeUI本来就提供这种布局。然后,你再于这个页面里面布置二级导航也可以。

效果如下:

AmazeUI中各种的导航式菜单与解决方法

代码如下:

<h1>导航菜单-标签页布局</h1>
        <div data-am-widget="tabs" class="am-tabs am-tabs-d2">
            <ul class="am-tabs-nav">
                <li class="am-active"><a href="#">项目1</a></li>
                <li><a href="#">项目2</a></li>
                <li><a href="#">项目3</a></li>
                <li><a href="#">项目4</a></li>
            </ul>
            <ul class="am-tabs-nav">
                <li><a href="#">项目5</a></li>
                <li><a href="#">项目6</a></li>
                <li><a href="#">项目7</a></li>
            </ul>
        </div>

同时,AmazeUI也提供另一种风格的标签页布局,效果如下:

AmazeUI中各种的导航式菜单与解决方法

代码如下:

<h1>导航菜单-标签页极简布局</h1>
        <div data-am-widget="tabs" class="am-tabs am-tabs-default">
            <ul class="am-tabs-nav">
                <li><a href="#">项目1</a></li>
                <li><a href="#">项目2</a></li>
                <li class="am-active"><a href="#">项目3</a></li>
            </ul>
            <ul class="am-tabs-nav">
                <li><a href="#">项目4</a></li>
                <li><a href="#">项目5</a></li>
                <li><a href="#">项目6</a></li>
            </ul>
        </div>

最后贴一下整个页面的效果图与代码:

AmazeUI中各种的导航式菜单与解决方法

<!--使用HTML5开发-->
<!doctype html>
<html class="no-js">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <!--自动适应移动屏幕-->
        <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
        <!--优先使用webkit内核渲染-->
        <meta name="renderer" content="webkit">
        <!--不要被百度转码-->
        <meta http-equiv="Cache-Control" content="no-siteapp"/>
        <!--以下才是引入amazeui资源-->
        <link rel="stylesheet" href="assets/css/amazeui.min.css">
        <link rel="stylesheet" href="assets/css/app.css">
        <!--引入js的时候要注意,必须先引入jQuery,再引入amazeui,因为这个框架是基于jQuery开发的-->
        <script src="assets/js/jquery.min.js"></script>
        <script src="assets/js/amazeui.min.js"></script>
        <title>导航菜单</title>
    </head>  
    <body>    
        <h1>导航菜单-横排文字式</h1>
        <style>
            /*这里是改写文字的颜色*/
            .am-menu-default .am-menu-nav a {
                color:#222;
            }
            /*这里是改写背景的颜色*/
            .am-menu-nav{
                background:#f1f1f1;
            }
        </style>
        <div data-am-widget="menu" class="am-menu  am-menu-default" >
            <a href="javascript: void(0)" class="am-menu-toggle a-in-menu"><i class="am-menu-toggle-icon am-icon-bars"></i></a>
            <!--表示每一个菜单都占3格,也就是在12格1行的布局中占据4格的位置-->
            <ul class="am-menu-nav am-avg-sm-3">
                <!--表示这个项目带下拉菜单-->
                <li class="am-parent">
                    <a href="#">项目1</a>
                    <ul class="am-menu-sub am-collapse am-avg-sm-4">
                        <li><a href="#">项目1-1</a></li>
                        <li><a href="#">项目1-2</a></li>
                        <li><a href="#">项目1-3</a></li>
                        <li><a href="#">项目1-4</a></li>
                        <li><a href="#">项目1-5</a></li>
                        <li><a href="#">项目1-6</a></li>
                    </ul>
                </li>
                <li><a href="#">项目2</a></li>
                <li><a href="#">项目3</a></li>
                <li><a href="#">项目4</a></li>
                <li class="am-parent">
                    <a href="#">项目5</a>
                    <ul class="am-menu-sub am-collapse am-avg-sm-4">
                        <li><a href="#">项目5-1</a></li>
                        <li><a href="#">项目5-2</a></li>
                        <li><a href="#">项目5-3</a></li>
                        <li><a href="#">项目5-4</a></li>
                        <li><a href="#">项目5-5</a></li>
                        <li><a href="#">项目5-6</a></li>
                    </ul>
                </li>
    
            </ul>
        </div>
        
        <h1>导航菜单-下拉列表式</h1>
        <style>
            /*让每一个下拉按钮占据的宽度与居中*/
            .am-dropdown{
                width:30%;
                text-align:center;
            }
        </style>
        <!--这里表示一行-->
        <div style="text-align:center; width:100%; margin-left:-1.5%">
            <div class="am-dropdown" data-am-dropdown>
                <button class="am-btn am-btn-primary am-dropdown-toggle" data-am-dropdown-toggle style="width:110%;" >项目1<span class="am-icon-caret-down"></span></button>
                <ul class="am-dropdown-content">
                    <li><a href="#">项目1-1</a></li>
                    <li><a href="#">项目1-2</a></li>
                    <li class="am-divider"></li>
                    <li><a href="#">项目1-3</a></li>
                </ul>
            </div>
            <div class="am-dropdown" data-am-dropdown >
                <button type="button" class="am-btn am-btn-primary" style="width:110%;" onClick="javascript:window.location.href='#'">项目2</button>        
            </div>
            <div class="am-dropdown" data-am-dropdown>
                <button class="am-btn am-btn-primary am-dropdown-toggle" data-am-dropdown-toggle style="width:110%;" >项目3<span class="am-icon-caret-down"></span></button>
                <ul class="am-dropdown-content">
                    <li><a href="#">项目3-1</a></li>
                    <li class="am-divider"></li>
                    <li><a href="#">项目3-2</a></li>
                    <li><a href="#">项目3-3</a></li>
                    <li><a href="#">项目3-4</a></li>
                </ul>
            </div>
        </div>
        <!--搞完一行,必须自己再开一行-->
        <div style="text-align:center; width:100%; margin-left:-1.5%">
            <div class="am-dropdown" data-am-dropdown>    
                <button type="button" class="am-btn am-btn-primary" style="width:110%;" onClick="javascript:window.location.href='#'">项目4</button>
            </div>
            <div class="am-dropdown" data-am-dropdown >
                <button class="am-btn am-btn-primary am-dropdown-toggle" data-am-dropdown-toggle style="width:110%;" >项目5<span class="am-icon-caret-down"></span></button>
                <ul class="am-dropdown-content">
                    <li><a href="#">项目5-1</a></li>                
                    <li><a href="#">项目5-2</a></li>
                    <li class="am-divider"></li>
                    <li><a href="#">项目5-3</a></li>
                    <li><a href="#">项目5-4</a></li>
                </ul>
            </div>
            <div class="am-dropdown" data-am-dropdown>    
                <button type="button" class="am-btn am-btn-primary" style="width:110%;" onClick="javascript:window.location.href='#'">项目6</button>
            </div>
        </div>
        
        <h1>导航菜单-标签页布局</h1>
        <div data-am-widget="tabs" class="am-tabs am-tabs-d2">
            <ul class="am-tabs-nav">
                <li class="am-active"><a href="#">项目1</a></li>
                <li><a href="#">项目2</a></li>
                <li><a href="#">项目3</a></li>
                <li><a href="#">项目4</a></li>
            </ul>
            <ul class="am-tabs-nav">
                <li><a href="#">项目5</a></li>
                <li><a href="#">项目6</a></li>
                <li><a href="#">项目7</a></li>
            </ul>
        </div>
        
        <h1>导航菜单-标签页极简布局</h1>
        <div data-am-widget="tabs" class="am-tabs am-tabs-default">
            <ul class="am-tabs-nav">
                <li><a href="#">项目1</a></li>
                <li><a href="#">项目2</a></li>
                <li class="am-active"><a href="#">项目3</a></li>
            </ul>
            <ul class="am-tabs-nav">
                <li><a href="#">项目4</a></li>
                <li><a href="#">项目5</a></li>
                <li><a href="#">项目6</a></li>
            </ul>
        </div>
        
    </body>
</html>

到此这篇关于AmazeUI中各种的导航式菜单与解决方法的文章就介绍到这了,更多相关AmazeUI导航式菜单内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

HTML / CSS 相关文章推荐
css3打造一款漂亮的卡哇伊按钮
Mar 20 HTML / CSS
一款简洁的纯css3代码实现的动画导航
Oct 31 HTML / CSS
纯css3实现的动画按钮的实例教程
Nov 17 HTML / CSS
关于css兼容性问题及一些常见问题汇总
May 03 HTML / CSS
通过Canvas及File API缩放并上传图片完整示例
Aug 08 HTML / CSS
使用HTML5进行SVG矢量图形绘制的入门教程
Feb 19 HTML / CSS
HTML5学习心得总结(推荐)
Jul 08 HTML / CSS
HTML5仿微信聊天界面、微信朋友圈实例代码
Jan 29 HTML / CSS
Html5页面二次分享的实现
Jul 30 HTML / CSS
使用html2canvas实现将html内容写入到canvas中生成图片
Jan 03 HTML / CSS
H5 video poster属性设置视频封面的方法
May 25 HTML / CSS
amazeui树节点自动展开折叠面板并选中第一个树节点的实现
Aug 24 HTML / CSS
AmazeUI 手机版页面的顶部导航条Header与侧边导航栏offCanvas的示例代码
Aug 19 #HTML / CSS
AmazeUI 缩略图的实现示例
Aug 18 #HTML / CSS
AmazeUI 单选框和多选框的实现示例
Aug 18 #HTML / CSS
amazeui时间组件的实现示例
Aug 18 #HTML / CSS
AmazeUI 模态窗口的实现代码
Aug 18 #HTML / CSS
AmazeUI底部导航栏与分享按钮的示例代码
Aug 18 #HTML / CSS
wordpress添加Html5的表单验证required方法小结
Aug 18 #HTML / CSS
You might like
部署PHP项目应该注意的几点事项分享
2013/12/20 PHP
PHP+Ajax检测用户名或邮件注册时是否已经存在实例教程
2014/08/23 PHP
PHP上传图片类显示缩略图功能
2016/06/30 PHP
PHP微信发送推送消息乱码的解决方法
2019/02/28 PHP
PHP中define() 与 const定义常量的区别详解
2019/06/25 PHP
基于jquery的获取mouse坐标插件的实现代码
2010/04/01 Javascript
JavaScript学习笔记之获取当前目录的实现代码
2010/12/14 Javascript
JavaScript初学者应注意的七个细节详细介绍
2012/12/27 Javascript
jquery使用jquery.zclip插件复制对象的实例教程
2013/12/04 Javascript
jquery教程ajax请求json数据示例
2014/01/13 Javascript
删除Javascript Object中间的key
2014/11/18 Javascript
再谈Javascript中的基本类型和引用类型(推荐)
2016/07/01 Javascript
canvas知识总结
2017/01/25 Javascript
jQuery插件HighCharts实现的2D面积图效果示例【附demo源码下载】
2017/03/15 Javascript
EasyUI的TreeGrid的过滤功能的解决思路
2017/08/08 Javascript
关闭Vue计算属性自带的缓存功能方法
2018/03/02 Javascript
基于vue v-for 多层循环嵌套获取行数的方法
2018/09/26 Javascript
浅谈微信页面入口文件被缓存解决方案
2018/09/29 Javascript
vue使用echarts图表自适应的几种解决方案
2020/12/04 Vue.js
详解Python中expandtabs()方法的使用
2015/05/18 Python
Python处理字符串之isspace()方法的使用
2015/05/19 Python
Python设计模式之抽象工厂模式
2016/08/25 Python
解决python2.7用pip安装包时出现错误的问题
2017/01/23 Python
Python可迭代对象操作示例
2019/05/07 Python
详解Django定时任务模块设计与实践
2019/07/24 Python
Python @property原理解析和用法实例
2020/02/11 Python
Python使用os.listdir和os.walk获取文件路径
2020/05/21 Python
python爬虫多次请求超时的几种重试方法(6种)
2020/12/01 Python
一款超酷的js+css3实现的3D标签云特效兼容ie7/8/9
2013/11/18 HTML / CSS
亚历山大·王官网:Alexander Wang
2017/06/23 全球购物
台湾租车首选品牌:IWS艾维士租车
2019/05/03 全球购物
Java中各种基本数据类型的默认值都是什么
2016/12/22 面试题
学生自我鉴定范文
2013/10/04 职场文书
基层党员对照检查材料
2014/08/25 职场文书
预备党员转正思想汇报
2014/09/26 职场文书
优秀团员自我评价
2015/03/10 职场文书