【问题标题】:CMenu Styling in YiiYii 中的 CMenu 样式
【发布时间】:2013-12-18 12:15:11
【问题描述】:

我正在根据我的主题设计我的 CMenu。下面是我的代码。

<!-- Navigation -->
<nav id="nav">
<ul id="navlist" class="sf-menu clearfix">

<?php
$this->widget('zii.widgets.CMenu',array(
'items'=>array(
array('label'=>'Contact', 'url'=>array('/site/contact')),
array('label'=>'Registration','url'=>array('/registration'),
'items'=>array(
array('label'=>'Registration','url'=>array('/registration')),
array('label'=>'Abc Registration','url'=>array('/registration/abc')),
),'visible'=>Yii::app()->user->isGuest),
array('label'=>'Login', 'url'=>array('/user/user/login'), 'visible'=>Yii::app()->user->isGuest),
array('label'=>'Logout ('.Yii::app()->user->name.')', 'url'=>array('/site/logout'), 'visible'=>!Yii::app()->user->isGuest)
),
));

?>
</ul>
</nav>

生成的html如下图

  <!-- Navigation -->
    <nav id="nav">
        <ul id="navlist" class="sf-menu clearfix">

   <ul id="yw1">


  <li><a href="/mysite/site/contact">Contact</a></li>
  <li><a href="/mysite/registration">Registration</a>
  <ul>
  <li><a href="/mysite/registration">Registration</a></li>
  <li><a href="/mysite/registration/abc">Abc Registration</a></li>
  </ul>
  </li>
  <li><a href="/mysite/user/user/login">Login</a></li>
  </ul>                
  </ul>
  </nav>
 <!-- Navigation -->

问题是 Yii 生成的 id 是 yw1..我想将它更改为 'navlist'。如何自定义 CMenu 那样?

编辑

我也尝试在 html 选项中设置 css 类。但它只是设置类,而不是 Id。所以它只给出相同的结果。

【问题讨论】:

    标签: php css yii


    【解决方案1】:

    CMenu 扩展 CWidget。使用CWidget.id:

    <?php
    $this->widget('zii.widgets.CMenu',array(
        'id'=> 'navlist',
        'items'=>array(
            ...
    

    【讨论】:

    • 注册项涉及到子菜单,如何给一个单独的ul类。有什么想法吗?
    • 查看items属性,有一个名为submenuOptions的项目选项。您需要为每个项目明确设置它。
    【解决方案2】:

    只需在您的小部件中添加一个id 属性

    $this->widget('zii.widgets.CMenu',array(
        'id'=> 'navlist',
    

    我不确定,但试试这个

        array('label'=>'Item1', 'url'=>"#",
         'linkOptions'=>array('id'=>'myId1'),
    'submenuOptions'=>array('id'=>'myId'),
    

    【讨论】:

    • 注册项涉及到子菜单,如何给一个单独的ul类。有什么想法吗?
    • @DencyGB 与您为主导航提供的方式相同。在项目前添加 'id'=>'yourid'
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-18
    • 2014-01-04
    • 1970-01-01
    相关资源
    最近更新 更多