CSS seçici özgüllüğü nedir ve nasıl çalışır?
Tarayıcı, bir öğede hangi stilleri göstereceğini CSS kurallarının özgüllüğüne göre belirler. Tarayıcının belirli bir öğeyle eşleşen kuralları zaten belirlediğini varsayıyoruz. Eşleşen kurallar arasında, dört virgülle ayrılmış değer olan a, b, c, d her kural için aşağıdakilere göre hesaplanır:
a, satır içi stil kullanılıp kullanılmadığıdır. Özellik bildirimi öğede satır içi stil isea1'dir, aksi takdirde 0'dır.bID seçicilerinin sayısıdır.csınıf, öznitelik ve sözde sınıf seçicilerinin sayısıdır.detiket ve sözde öğe seçicilerinin sayısıdır.
Ortaya çıkan özgüllük bir puan değil, sütun sütun karşılaştırılabilecek bir değer matrisidir. En yüksek özgüllüğe sahip olanı belirlemek için seçicileri karşılaştırırken soldan sağa bakın ve her sütundaki en yüksek değeri karşılaştırın. Bu nedenle b sütunundaki bir değer, c ve d sütunlarındaki değerleri, ne olursa olsun geçersiz kılacaktır. Bu nedenle 0,1,0,0 özgüllüğü 0,0,10,10'dan daha büyük olacaktır.
Eşit özgüllük durumlarında: en son kural geçerlidir. Stil sayfanıza (dahili veya harici olmasına bakılmaksızın) aynı kuralı iki kez yazdıysanız, stil sayfanızdaki alt kuralın stil verilecek öğeye daha yakın olduğu kabul edilir ve bu nedenle daha özgül kabul edilir ve uygulanır.
Gerektiğinde kolayca geçersiz kılınabilmeleri için düşük özgüllüğe sahip CSS kuralları yazardım. CSS UI bileşen kitaplığı kodu yazarken, kütüphane kullanıcılarının özgüllüğü artırmak veya !important kullanmak uğruna çok karmaşık CSS kuralları kullanmak zorunda kalmadan onları geçersiz kılabilmeleri için düşük özgüllüklere sahip olmaları önemlidir.