Nasıl smarty şablonu biçiminde aşağıdaki kayıt stil yapabilirsiniz

2 Cevap php

i smarty şablon sayfasında şu formatta kayıtları listelemek istiyorum

1 3 5 ...
2 4 6 ...

there should be the ul

li 1
2 in this format

2 Cevap

Her-diğer girişi atlamak için "adım" değiştirici kullanarak, iki kez dizi aracılığıyla bilmiş döngü var:

<ul>
{section name=index loop=$myList start=0 step=2}<li>{$myList[index]}</li>{/section}
</ul>
<ul>
{section name=index loop=$myList start=1 step=2}<li>{$myList[index]}</li>{/section}
</ul>

CSS display:block; width:50px; veya display:inline-block (tüm tarayıcılar "inline-block" destekleyen gerçi) ile bu birleştirin ve size istediğiniz görünümü almalısınız.

Afair HTML / CSS ne de Smarty düzeni bu tür başa çıkmak için herhangi bir işlevi sağlamaz, bu yüzden n / 2 listeleri oluşturmak zorundasınız ve her liste (inline-block eleman olarak görüntülenir gerekecektir korkuyorum CSS: display: inline-block;).

$myList = array(1, 2, 3, 4, 5, 6);
$listsCount = ceil(count($myList) / 2);

for ($i = 0; $i < $listsCount; ++$i) {
  echo 'UL';
  for ($j = $i * 2; $j < $i * 2 + 2; ++$j) {
     echo 'LI ' . $myList[$j] . '/LI';
  }
  echo '/UL';
}