Informatică, întrebare adresată de CatalinaBcg, 9 ani în urmă

Bună. Am o problema legată de site-uri. Am făcut un buton, l-am centrat, i-am dat culoare, dimensiuni, dar, când încerc sa fac altele tot în aceeaşi pagină, primul buton preia culorile si dimensiunile celor pe care le creez după. Unde greşesc?


artur99: Poți pune codul?
artur99: Styling-ul îl faci din CSS sau din style="" de la elemente?
CatalinaBcg: din CSS
artur99: Păi, dacă faci din css, când scrii button{}
artur99: Pune codul pentru toate elementele, stai că scriu un răspuns complet, 1 sec
CatalinaBcg: ok, aştept

Răspunsuri la întrebare

Răspuns de artur99
2
CSS-ul funcționează așa:
Când scrii:
button{
color: red;
}
Se setează culoarea roșu la toate butoanele de pe pagină.
Dacă vrei să faci cu stiluri diferite, trebuie să folosești clase sau ID-uri. E mai ok cu clase(poți avea mai multe elemente pe pagină cu aceeași clasă, dar cu ID-uri nu, decât unul singur).

HTML:

<button class="buton1">Click aici 1</button>
<button class="button2">Alt buton</button>

CSS:
<style>
button{
font-size:20px; /*asta setează mărimea 20px la toate butoanele de pe pagină*/
}

.buton1{
color:red; /*Astea setează culoarea roșu doar la butonul cu clasa buton1*/
}

.buton2{
color:blue; /*Astea setează culoarea albastru doar la butonul cu clasa buton2*/
}
</style>

antonii: De asemnea cu id poti sa faci ceva de genul : www.site.ro#buton_cu_id ....asa ceva nu poti face cu clase. (ai putea cu insa cumva cu o combinatie de php si probabil jquery dar ar fi destuul de naiv. Daca n-ai nevoie nu folosii.) Dar oricum nu prea conteaza ce folosesti clasa sau id. 'In final depinde de utilizator unde pune acolodale'.
antonii: Si o alta idee..nu stiam de acest lucru dar aparent cand modifici un element pri id-ul sau (cu js) gasirea acestuia in pagina va fi mai rapida (si aplicarea modificarilor) deoarece cand verifica pagina ,odata ce a gasit id-ul opreste loop-ul.Pe cand la clasa continua pana la sfarsit
artur99: Asta dacă lucrezi cu JS plain, că îți dă un array la clase, și un singur element la ID-uri, dar chiar nu e încurajat să folosești ID-uri la butoane, mai ales în cazul de față :)) Și apoi, chestia cu ancore nu se folosește la butoane :)) Și în general, nu prea ai cum să numești un buton unic decât dacă e butonul care dă search, sau un submit la ceva. Și nu înțeleg cu ce deranjează clasele...
artur99: De ce să folosești ID-uri, când poți folosi clase? (că probabil butoanele se vor mai repeta, nu a fost definit conceptul de utilizare). Mai ales la începători. Am văzut foarte mulți care, chiar dacă se repetau elementele, repetau CSS-ul pentru fiecare element, și puneau clase sau ID-uri diferite. Deci folosirea claselor de la început încurajează folosirea lor cum trebuie, dar dacă îi limitezi la un ID, e cam na...
artur99: Și dacă te uiți la google, de exemplu :)) Nici măcar nu au ID setat la butoanele de search :))
artur99: Și la butonul de căutare vocală are și clasă și ID. Clasa o folosește pentru CSS, iar ID-ul pentru identificarea cu JS...
artur99: Dar oricum, în punctul "Dar oricum nu prea conteaza ce folosesti clasa sau id. " sunt de acord cu tine :)) Nu contează așa de mult... Dar totuși chiar nu e recomandată o pagină plină cu ID-uri, doar pentru că elementul respectiv l-ai folosit o singură dată pe acea pagină, sau ceva
artur99: Apropo, lucrezi în .NET, ASP? De cât timp?
artur99: (oricum, revenind la punctul inițial, nu cred că era niciun motiv pentru a înlocui clasele cu ID-uri. Nu a spus nimic de a fi elemente unice, ci pur și simplu stilurile unor butoane. Și chiar dacă ar fi o listă de butoane la fel, și unul din ele ar trebui colorat altfel, tot clasă se folosește, pentru că sunt șanse foarte mari să mai ai nevoie de ea undeva, și în JS[și oricum, cine folosește plain JS în client-side?! Se folosește jQuery :)) ] prea mici șansele să ai de identificat așa ceva)
artur99: (și afectează puțin memoria, dacă o iei așa :))) o să ai 2 variabile noi în js cu numele id_unic_1 și id_unic_2 :)) Bine, nu ar fi o problemă asta, că nu merge nimeni pe 2 kb de RAM, dar totuși se "poluează" :)) )
Alte întrebări interesante