yii2 Nav::widget() 和 Menu::widget()
Nav::widget http://www.yiiframework.com/doc-2.0/yii-bootstrap-nav.html
Menu::widget() http://www.yiiframework.com/doc-2.0/yii-widgets-menu.html#$items-detail
这两个widget都是显示菜单的,或者说可以这么干,使用之中返现有个很明显的不同:
Nav 的子菜单或者子项目默认使用的ul样式是'dropdown-menu',Menu 默认只用一个display:block。Nav的UL标签的样式要该需要改api才会变,目前我还不知道怎么不改api就可以修改UL标签的class,可以添加,但是原来的dropdown-menu 是在的。
Nav 给子项目添加样式方法
[
'label' => 'xx管理',
'url' => ['url0'],
'options'=>['class'=>'accordion'],
'items' => [
[
'label' => '管理xx', 'url' => ['ulr1'],
],
[
'label' => '添加xx', 'url' => ['url2']
],
],
],
在11行后添加
'dropDownOptions'=>['class'=>'nav nav-pills nav-stacked'], 可以修改子items的ul样式,如图,dropdown-menu还是在的

Menu::widget有个 submenuTemplate 属性,可以通过修改该属性来自定义子项目UL标签的样式
echo Menu::widget([
'options' => ['class' => 'nav nav-pills nav-stacked main-menu'],
'items' => $menuItems,
'submenuTemplate' => "\n<ul class='nav nav-pills nav-stacked' role='menu'>\n{items}\n</ul>\n",
]);
Menu::widget是一定要有'label'属性的,不然是会报错的,但是Nav就可以直接在两个子项目间写li标签之类的,看官方文档。
yii2 Nav::widget() 和 Menu::widget()的更多相关文章
- QT+常见控件+tab Widget 和Stacked Widget
首先:这里介绍以下tab Widget 和Stacked Widget 之间的区别和使用的方法: tab Widget控件可以直接的进行切换,Stacked Widget却不可以直接在界面上进行切换, ...
- ThinkPHP3.2.2 Widget扩展以及widget demo实例
Widget扩展一般用于页面组件的扩展. 先说明Widget被调用的方法,你只需要在你的模板文件中使用这样的语法:{:W("Demo/demo_widget_method",arr ...
- Android开发之创建App Widget和更新Widget内容
App WidgetsApp Widgets are miniature application views that can be embedded in other applications (s ...
- TextAppearance.Material.Widget.Button.Inverse,Widget.Material.Button.Colored
编译xamarin android项目报错: android:TextAppearance.Material.Widget.Button.Inverse android:Widget.Material ...
- How To Use the Widget Factory 使用widget factory创建插件
To start, we'll create a progress bar that just lets us set the progress once. 创建一个基于widget factory ...
- Python GUI之tkinter窗口视窗教程大集合(看这篇就够了)
一.前言 由于本篇文章较长,所以下面给出内容目录方便跳转阅读,当然也可以用博客页面最右侧的文章目录导航栏进行跳转查阅. 一.前言 二.Tkinter 是什么 三.Tkinter 控件详细介绍 1. T ...
- Python GUI之tkinter窗口视窗教程大集合(看这篇就够了) JAVA日志的前世今生 .NET MVC采用SignalR更新在线用户数 C#多线程编程系列(五)- 使用任务并行库 C#多线程编程系列(三)- 线程同步 C#多线程编程系列(二)- 线程基础 C#多线程编程系列(一)- 简介
Python GUI之tkinter窗口视窗教程大集合(看这篇就够了) 一.前言 由于本篇文章较长,所以下面给出内容目录方便跳转阅读,当然也可以用博客页面最右侧的文章目录导航栏进行跳转查阅. 一.前言 ...
- Yii2 menu navbar nav小部件的使用示例
menu Menu::widget( [ [ 'label' => $menu['name'], 'url' => [$menu['route']], 'items' => [ [ ...
- yii2 rbac权限控制之菜单menu详细教程
作者:白狼 出处:http://www.manks.top/article/yii2_rbac_menu本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则 ...
随机推荐
- pyspark 内容介绍(一)
pyspark 包介绍 子包 pyspark.sql module pyspark.streaming module pyspark.ml package pyspark.mllib package ...
- 从php到浏览器的缓存机制,不得不看!
所有的php程序员都知道在php脚本里面执行 echo "1";访客的浏览器里面就会显示"1". 但是我们执行下面的代码的时候,并不是显示"1&quo ...
- CSS 文件的4种引入方式
(1)链接式 : 在网页的<head></head>标签对中使用<link>标记来引入外部样式表文件,使用html规则引入外部css (用得比较多) : < ...
- [html5] 学习笔记-服务器推送事件
1.HTML5服务器推送事件介绍 服务器推送事件(Server-sent Events)是Html5规范的一个组成部分,可以用来从服务端实时推送数据到浏览器端. 传统的服务器推送技术----WebSo ...
- shiro.ini 配置详解
引用: [1]开涛的<跟我学shiro> [2]<SpringMVC整合Shiro> [3]<shiro简单配置> [4]Apache shiro集群实现 (一) ...
- localStorage 如何存储JSON数据并读取JSON数据
localStorage是HTML5提供的再客户端实现本地存储的一种方法,但是localStorage方法只能存储字符串数据,有时候我们需要存储对象到本地比如:JSON:那么,localStorage ...
- 关于post与get请求参数存在特殊字符问题
遇到项目中存在文本编辑框输入特殊字符 比如:# ? & 空格 , 导致后台接受不到参数问题,对可能存在特殊字符的参数进行encodeURIComponent; C#后台接受参数不需要解码 也可 ...
- 前端开发面试题总结之——CSS3
____________________________________________________________________________________________ 相关知识点 布 ...
- Codeforces 719B Anatoly and Cockroaches
B. Anatoly and Cockroaches time limit per test:1 second memory limit per test:256 megabytes input:st ...
- 构建Docker平台【第二篇】安装 Docker
第一步:上传安装包和 docker 镜像 1.安装包: docker-engine-1.12.1-1.el7.centos.x86_64.rpm docker-engine-selinux-1.12. ...