2017-10-17 6 views
0

Je fais une barre de navigation et je veux ajouter une classe à la balise UL principale du menu, est-ce que quelqu'un sait comment ajouter de la classe à cet élément. Actuellement options et linkOptions sont disponibles qui appliquent les attributs au lien/ancre et le parent LI de l'ancre.Ajouter une classe à UL en utilisant Nav Yii2

Voici mon code actuel.

NavBar::begin([ 
     'innerContainerOptions'=>['class'=>'container-fluid'], 
     'options' => [ 
      'class' => 'style-ihozflem','style'=>'left: 125px; width: 730px; position: absolute; top: 20px; height: 24px;','data'=>['state'=>'center notMobile', 'dropmode'=>"dropDown"] 
     ], 

    ]); 
    echo Nav::widget([ 
     'encodeLabels'=>false, 
     'activateItems'=>true, 
     'items' => $menuItems, 
    ]); 
    NavBar::end(); 

Répondre

1

Il suffit d'ajouter des options de classe à Nav :: widget de

echo Nav::widget([ 
    'options' => ['class' => 'whatever-class navbar-nav navbar-right'], 
    'encodeLabels'=>false, 
    'activateItems'=>true, 
    'items' => $menuItems, 
]); 

Espoir qui sera utile!

+0

hmm vous avez raison d'utiliser les options, et il ajoute la classe à la balise 'UL' mais il ajoute toujours la classe' nav' par défaut sur le 'UL', aucune idée comment faire que –

+0

vous ne pouvez pas supprimer la classe 'nav' par défaut car le widget Nav a pour but de rendre bootstrap nav qui utilise cette classe. donc si vous voulez rendre seulement ul avec des liens vous devez le faire vous-même en utilisant 'Html :: ul', voir cet exemple de liste: http://www.yiiframework.com/doc-2.0/guide-helper-html.html #lists –

+0

ouais je dois remplacer les propriétés css de la classe nav plutôt que de le supprimer. –