04/05/2010, 12:13:35
Pourquoi ne pas faire dans la boucle smarty de base un test de pair/impair avec « is [not] even » ?
Ton HTML :
Ton CSS :
Ton menu Smarty :
Dis moi si ça fonctionne. Ca permet d'alterner le style (left/right) et donc positionner le li à droite ou à gauche.
Enfin j'ai fais ça de tête, je n'ai pas testé.
Ton HTML :
Code :
<ul>
<li class="left"><a href="#">Lien 1</a></li>
<li class="right"><a href="#">Lien 2</a></li>
<li class="left"><a href="#">Lien 3</a></li>
<li class="right"><a href="#">Lien 4</a></li>
</ul>
Code :
ul {
display : block ;
overflow : auto ;
width : 200px ;
}
ul li {
display : block ;
width : 100px ;
height : 35px ;
}
ul li.left {
float : left ;
}
ul li.right {
float : right ;
}
Code :
{if $count > 0}
<ul>
{assign var="num" value=1}
{foreach from=$nodelist item=node}
{if $node->type != 'sectionheader' and $node->type != 'separator'}
<li class="{if $num is even}right{else}left{/if}"><a href="{$node->url}"{if $node->target ne ""} target="{$node->target}"{/if}>{$node->title}</a></li>
{/if}
{assign var="num" value=$num+1}
{/foreach}
</ul>
{/if}
Enfin j'ai fais ça de tête, je n'ai pas testé.