Les avertissements suivants se sont produits :
Warning [2] Undefined array key 0 - Line: 1640 - File: showthread.php PHP 8.2.18 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/showthread.php 1640 errorHandler->error_callback
/showthread.php 915 buildtree




Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
[Résolu]Mettre un menu sur 2 colonnes
#12
Pourquoi ne pas faire dans la boucle smarty de base un test de pair/impair avec « is [not] even » ?

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>
Ton CSS :
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 ;
}
Ton menu Smarty :
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}
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é.


Messages dans ce sujet

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)