Условный оператор CSS для чередующегося цвета строки (начать с последней строки?) - PullRequest
1 голос
/ 05 сентября 2011

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

<!-- IF forumrow.S_ROW_COUNT is even-->
   <li class="row" style="background-color:#536482;">
<!-- ELSE -->
   <li class="row" style="background-color:#E0EBB2;">
<!-- ENDIF -->

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

Мой вопрос: есть ли что-нибудь, что я могу добавить к своему условному выражению, чтобы оно начиналось в последней строке моих таблиц?Тогда последним рядом с нижним колонтитулом всегда будет # E0EBB2.

Заранее спасибо.

Ответы [ 2 ]

2 голосов
/ 05 сентября 2011

Вы можете использовать только псевдоселектор css nth-last-child и ничего более.

Попробуйте:

ul li {
   background-color: #536482;
}

ul li:nth-last-child(odd) {
    background-color: #E0EBB2;
}

Рабочий пример здесь .

2 голосов
/ 05 сентября 2011

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

...