De ce să evitați selectorul ID () - Alsacreations
css 27407 subiecte

CSS și formatare, CSS3
Când o frază m-a surprins și nu pot să înțeleg:
ID-urile trebuie evitate (cu excepții), deoarece sunt prea specifice în calculul greutății selectorului
Cineva are o explicație?
originea acestei recomandări este cu OOCSS și N. Sullivan.
Mai bine să folosiți doar clase decât id-uri și clase, deoarece atunci când vine vorba de suprascrierea declarațiilor al căror selector conține un id, aveți nevoie de un alt id, deoarece chiar și 15 clase nu vor avea la fel de multă greutate ca acest id.
Este ca și! Important și mai puțin mai rău.
Și adaug pentru că confuzia este făcută (nu de dvs., ci prea des):
Ceea ce nu spune această propoziție: acele id-uri ar trebui evitate peste tot. Este obligatoriu pentru accesibilitatea formularelor (pentru etichetă și ID pe intrare/textarea/selectare) și esențială în JS
Cred că ceea ce a vrut să spună Raphaël este că, din moment ce un id are mai multă greutate decât o clasă, este mai dificil să redefiniți CS-urile în ea doar trecând printr-o clasă. Va trebui apoi să creați un selector mai complicat.
De exemplu, în următorul cod:
dacă aveți o intrare cu ID-ul "myInput" și adăugați clasa "eroare" la ea (atunci când utilizatorul greșește, de exemplu), chenarul va rămâne albastru.
La rândul meu, de la acest articol, folosesc doar id-uri în js (cu excepția cazului în care nu am de ales) și constat că codul meu HTML a câștigat în lizibilitate.