Каждые 4 элемента li завернуть в div ???

#
Каждые 4 элемента li завернуть в div ???
Имеется

<ul>
   <li></li>
   <li></li>
   <li></li>
   <li></li>  
   <li></li>
   <li></li>
   <li></li>
   <li></li>
</ul>


Нужно завернуть по 4-е элемента списка li в div, вот как в таблице строка и в ней ячейки


<table>
<tr>
<td></td><td></td><td></td><td></td>
</tr>
<tr>
<td></td><td></td><td></td><td></td>
</tr>
</table>

Так же хочу разбить на строки li пример ниже

<ul>
   <div>
      <li></li><li></li><li></li><li></li>
   </div>
   <div>
      <li></li><li></li><li></li><li></li>
   </div>
</ul>


Как это сделать на xsl ??? и будет ли это семантично?
Я только HTML верстку знаю, вот теперь приходится осваивать CMS
#
Re: Каждые 4 элемента li завернуть в div ???
Все выше написанное неактуально, вот переделал вопрос, лучше просто на div-х, li нельзя заворачивать в div несемантично выходит,
Как такое реализовать на xsl ???

<div class="main">
   <div class="sub-main">
          <div>1</div><div>2</div><div>3</div><div>4</div>
   </div>
</div>
   <div class="sub-main">
          <div>5</div><div>6</div><div>7</div><div>8</div>
   </div>

отбирать по 4-е блока и заворачивать в блок с классом sub-main
Я только HTML верстку знаю, вот теперь приходится осваивать CMS
#
Re: Каждые 4 элемента li завернуть в div ???
<div class="main"><div class="sub-main">
<xsl:apply-templates select="..."/>
</div></div>

+
<xsl:template match="...">

...

<xsl:if test="position() mod 4 = 0 and position()!=last()">
   <xsl:text disable-output-escaping="yes">&lt;/div&gt;&lt;div class="sub-main"&gt;</xsl:text>
</xsl:if>
</xsl:template>

#
Re: Каждые 4 элемента li завернуть в div ???
h4mpy не совесм понял вас ? Под троеточием что вы подразумеваете? выводиться будет n-oe(неизвестное колличество) div блоков, вот допустим выводится 15 блоков div, получается 4 строки блоков div, в первых 3-х по 4-е блока, а для последней 4-ой строки остается только 3-блока div они тоже обернутся доп. div-ом ???
Я только HTML верстку знаю, вот теперь приходится осваивать CMS
#
Re: Каждые 4 элемента li завернуть в div ???
обернутся
непонятно что у вас имеется - структура, информационная система, интернет магазин

найдите вызов нужных элементов
<xsl:apply-templates select="..."/>

оберните в div'ы
<div class="main"><div class="sub-main">
<xsl:apply-templates select="..."/>
</div></div>

найдите этот шаблон
<xsl:template match="...">

и добавьте в конец
<xsl:if test="position() mod 4 = 0 and position()!=last()">
   <xsl:text disable-output-escaping="yes">&lt;/div&gt;&lt;div class="sub-main"&gt;</xsl:text>
</xsl:if>
Модератор
#
Re: Каждые 4 элемента li завернуть в div ???
ilyas->,
смотрите как у нас в XSL-шаблонах выводятся группы, здесь тот же самый принцип
#
Re: Каждые 4 элемента li завернуть в div ???
h4mpy Спасиба ПОМОГЛО!!!
Я только HTML верстку знаю, вот теперь приходится осваивать CMS
Авторизация