У меня есть список, и каждый элемент связан, есть ли способ изменить цвет фона для каждого элемента?
<ul>
<li><a href="link">Link 1</a></li>
<li><a href="link">Link 2</a></li>
<li><a href="link">Link 3</a></li>
<li><a href="link">Link 4</a></li>
<li><a href="link">Link 5</a></li>
</ul>
Ответы:
Как насчет прекрасного CSS3?
источник
Если вы хотите сделать это исключительно в CSS, у вас будет класс, который вы назначаете каждому альтернативному элементу списка. Например
Если ваш список генерируется динамически, эта задача будет намного проще.
Если вы не хотите каждый раз обновлять этот контент вручную, вы можете использовать библиотеку jQuery и поочередно применять стиль к каждому
<li>
элементу в вашем списке:И ваш код jQuery:
источник
Вы можете добиться этого, добавив чередующиеся классы стилей к каждому элементу списка.
А затем стилизовать его как
Вы можете дополнительно автоматизировать этот процесс с помощью javascript (пример jQuery ниже)
источник
Попробуйте добавить пару атрибутов класса, скажем, «четный» и «нечетный», к чередующимся элементам списка, например
В разделе <style> страницы HTML или в связанной таблице стилей вы должны определить те же классы, указав желаемые цвета фона:
Возможно, вы захотите использовать библиотеку шаблонов по мере развития ваших потребностей, чтобы предоставить вам большую гибкость и сократить набор текста. Зачем набирать все эти элементы списка вручную?
источник
Поскольку вы используете стандартный HTML, вам нужно будет определить отдельный класс и вручную установить строки для классов.
источник
Вы можете сделать это, указав чередующиеся имена классов в строках. Я предпочитаю использовать
row0
иrow1
, что означает, что вы можете легко добавить их, если список создается программно:Другой способ - использовать javascript. В этом примере используется jQuery:
Изменить: я не знаю, почему я привел примеры с использованием строк таблицы ... замените
tr
наli
иtable
на,ul
и это применимо к вашему примеруисточник
Если вы используете решение jQuery, оно будет работать в IE8:
jQuery
CSS
Если вы используете решение CSS, оно не будет работать в IE8:
источник
Это устанавливает цвет фона для четного и нечетного li:
источник
Вы можете жестко закодировать последовательность, например:
источник