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 给子项目添加样式方法

 1                   [
 2                                     'label' => 'xx管理',
 3                                     'url' => ['url0'],
 4                                     'options'=>['class'=>'accordion'],
 5                                     'items' => [
 6                                         [
 7                                             'label' => '管理xx', 'url' => ['ulr1'],
 8                                         ],
 9                                         [
10                                             'label' => '添加xx', 'url' => ['url2']
11                                         ],
12                                     ],
13                                 ],

在11行后添加   

'dropDownOptions'=>['class'=>'nav nav-pills nav-stacked'],

可以修改子items的ul样式,如图,dropdown-menu还是在的

 

Menu::widget有个 submenuTemplate 属性,可以通过修改该属性来自定义子项目UL标签的样式

1 echo Menu::widget([
2                                 'options' => ['class' => 'nav nav-pills nav-stacked main-menu'],
3                                 'items' => $menuItems,
4                                 'submenuTemplate' => "\n<ul class='nav nav-pills nav-stacked' role='menu'>\n{items}\n</ul>\n",
5                             ]);

Menu::widget是一定要有'label'属性的,不然是会报错的,但是Nav就可以直接在两个子项目间写li标签之类的,看官方文档。

 

转载于:https://www.cnblogs.com/ediszhao/p/5723129.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值