Saya memiliki daftar, dan setiap item ditautkan, adakah cara saya dapat mengganti warna latar belakang untuk setiap item?
<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>
Jawaban:
Bagaimana dengan CSS3 yang bagus?
sumber
Jika Anda ingin melakukan ini murni di CSS maka Anda akan memiliki kelas yang akan Anda tetapkan untuk setiap item daftar alternatif. Misalnya
Jika daftar Anda dibuat secara dinamis, tugas ini akan jauh lebih mudah.
Jika Anda tidak ingin setiap kali memperbarui konten ini secara manual, Anda dapat menggunakan pustaka jQuery dan menerapkan gaya secara bergantian ke setiap
<li>
item dalam daftar Anda:Dan kode jQuery Anda:
sumber
Anda dapat mencapai ini dengan menambahkan kelas gaya bergantian ke setiap item daftar
Dan kemudian menatanya seperti
Anda selanjutnya dapat mengotomatiskan proses ini dengan javascript (contoh jQuery di bawah)
sumber
Coba tambahkan sepasang atribut kelas, katakan 'genap' dan 'ganjil', ke elemen daftar bergantian, mis
Di bagian <style> halaman HTML, atau di stylesheet tertaut, Anda akan menentukan kelas yang sama, menentukan warna latar belakang yang Anda inginkan:
Anda mungkin ingin menggunakan pustaka template karena kebutuhan Anda berkembang untuk memberi Anda fleksibilitas yang lebih besar dan untuk mengurangi pengetikan. Mengapa mengetik semua elemen daftar itu dengan tangan?
sumber
Karena Anda menggunakan HTML standar, Anda perlu menentukan kelas terpisah untuk dan mengatur baris secara manual ke kelas.
sumber
Anda dapat melakukannya dengan menentukan nama kelas bergantian pada baris. Saya lebih suka menggunakan
row0
danrow1
, yang berarti Anda dapat dengan mudah menambahkannya, jika daftar sedang dibuat secara terprogram:Cara lain adalah dengan menggunakan javascript. jQuery digunakan dalam contoh ini:
Sunting: Saya tidak tahu mengapa saya memberi contoh menggunakan baris tabel ... ganti
tr
denganli
dantable
denganul
dan itu berlaku untuk contoh Andasumber
Jika Anda menggunakan solusi jQuery, itu akan berhasil di IE8:
jQuery
CSS
Jika Anda menggunakan solusi CSS, ini tidak akan berfungsi di IE8:
sumber
Ini mengatur warna latar belakang pada gen genap dan ganjil:
sumber
Anda dapat melakukan hardcode urutan tersebut, seperti:
sumber