Php Yii中的CMenu样式

Php Yii中的CMenu样式,php,css,yii,Php,Css,Yii,我正在根据我的主题设计我的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/co

我正在根据我的主题设计我的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">

<?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>
  <!-- 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

<!-- 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>
编辑

<!-- 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选项中设置css类。但它只是设置类,而不是Id。因此它只给出相同的结果。

CMenu
扩展了
CWidget
。使用:

<!-- 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>

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

<!-- 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>
$this->widget('zii.widgets.CMenu',array(
    'id'=> 'navlist',
我不确定,但试试这个

<!-- 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>
    array('label'=>'Item1', 'url'=>"#",
     'linkOptions'=>array('id'=>'myId1'),
'submenuOptions'=>array('id'=>'myId'),

如何为注册项目提供单独的ul类,因为它涉及子菜单。有什么想法吗?@DencyGB与主导航相同。在itemsHow之前添加'id'=>'yourid',为注册项目提供一个单独的ul类,因为它涉及子菜单。知道吗?检查属性,有一个名为
子菜单选项的项目选项
。您需要为每个项目显式设置它。