Lebih
wildcard * di CSS untuk kelas
Saya memiliki div bahwa saya'm styling dengan .tocolor
, tapi saya juga perlu pengenal unik 1,2,3,4 dll. jadi saya'm menambahkan bahwa sebagai kelas lain tocolor-1
.
<div class="tocolor tocolor-1"> tocolor 1 </div>
<div class="tocolor tocolor-2"> tocolor 2 </div>
<div class="tocolor tocolor-3"> tocolor 3 </div>
<div class="tocolor tocolor-4"> tocolor 4 </div>
.tocolor{
background: red;
}
Apakah ada cara untuk memiliki hanya 1 kelas tocolor-*
. Saya mencoba menggunakan wildcard *
seperti dalam css ini, tapi itu tidak't bekerja.
.tocolor-*{
background: red;
}
638
4
Yang anda butuhkan adalah yang disebut atribut selector. Contoh, menggunakan struktur html anda, adalah sebagai berikut:
Di tempat
div
anda dapat menambahkan elemen atau menghapus sama sekali, dan di tempatkelas
anda dapat menambahkan atribut tertentu elemen.[kelas^="tocolor-"]
— dimulai dengan "tocolor-".[class*=" tocolor-"]
— mengandung substring "tocolor-" yang terjadi secara langsung setelah karakter ruang.Demo: http://jsfiddle.net/K3693/1/
Informasi lebih lanjut tentang CSS atribut selector, anda dapat menemukan di sini dan di sini. Dan dari MDN Docs MDN Docs
Ya, anda bisa ini.
Ini akan memilih semua id yang dimulai dengan
'istilah-'
.Adapun alasan untuk tidak melakukan hal ini, saya melihat di mana itu akan lebih baik untuk memilih cara ini, seperti untuk gaya, saya tidak't melakukannya sendiri, tapi itu's mungkin.
Alternatif solusi:
div[kelas|='tocolor']
akan cocok untuk nilai-nilai dari "kelas" atribut yang dimulai dengan "tocolor-" seperti "tocolor-1", "tocolor-2", dll.Hati-hati bahwa ini tidak't pertandingan
Referensi: https://www.w3.org/TR/css3-selectors/#attribute-representation
Jika anda don't perlu pengenal unik untuk gaya lebih lanjut dari divs dan menggunakan HTML5 anda bisa mencoba dan pergi dengan kustom Data Atribut. Baca di sini atau mencoba pencarian google untuk
HTML5 Custom Data Atribut