2016-01-06 2 views
0

У меня есть веб-страница, состоящая из содержимого видео/изображения, и я их показываю по четыре на каждой строке.Изменить раскладку столбцов только для первой строки для цикла

Я хотел бы сделать первый ряд отличным разделом с другой конфигурацией столбцов, как показано ниже.

enter image description here

Так эта специальная строка будет иметь 3 колонки с первым в большем размере.

Ниже приведено то, что у меня есть, и <li> представляет строку и <figure> представляет собой столбец.

<ul> 
    <li> 
    <% Object.keys(data).forEach(function(key) { %> 

     <% if (key%4 == 0 && key != 0) { %> 
      </li><li> 
     <% } %> 
     <figure> 

      ... 

     </figure> 
    <% }) %> 
</ul> 

Я просто не могу придумать, добавив это условие в цикл.

+0

Первый шаг получает класс CSS или ID для элемента, чтобы быть две широкие –

+0

колонны Да ... CSS-класс считается выполненным здесь. Просто забыл упомянуть. Благодарю. –

ответ

1

Если у вас есть ваши настройки CSS правильно, так что <figure> элемент с классом featured получает правильный двойной ширины

<ul> 
    <li> 
    <% Object.keys(data).forEach(function(key) { %> 
     <% if ((key + 1)%4 == 0) { %> 
      </li><li> 
     <% } %> 
     <figure <% if (key == 0) { %> class="featured" <% } %> > 

      ... 

     </figure> 
    <% }) %> 
    </li> 
</ul> 
+0

Спасибо. Это выглядит многообещающе. Я никогда не думал о добавлении условия внутри тега. Только одна вещь: '

  • ' никогда не выполняется, что я считаю, потому что '<% if ((key + 1)% 4 == 0) {%>' никогда не является истинным. Но я не понимаю, это условие должно пройти. У вас есть идея? –

  • +0

    - это ваш ключ, строка или целое число (я предположил, что это будет целое число)? –

    +0

    Потому что, если у вас есть строковый ключ, добавляющий 1 к нему, может не дать ожидаемых результатов: '(" 3 "+ 1) =>" 31 "' '(parseInt (" 3 ") + 1) = > 4' –

    Смежные вопросы