Mi a kulonbseg az id es a class kozott?
ID az egyedi azonosító, class pedig csoportosítás. Alap példa:
Egy osztályban sok diák van (fordítva: sok diák tartozhat egy osztályba, vagy több osztályba is akár), de a diákoknak csak 1 - 1 neve (ID-ja) lehet.
<!DOCTYPE html>
<html>
<head>
<style>
#center {
text-align: center;
color: red;
}
</style>
</head>
<body>
<h1 id="center">Red and center-aligned heading</h1>
<p id="center">Red and center-aligned paragraph.</p>
</body>
</html>
Akkor ennek elmeletileg nem kellene mukodnie?
Hát lehet, hogy működik éppenséggel egy adott böngészőn, de az ID lényege az, hogy az alapján be lehet azonosítani egy és kizárólag egy tag-et. Tehát egy ID-t csak egy tag kaphat. Pont erre jó a class, hiszen azzal több tag-et is meg lehet formázni. Tehát így helyes:
<!DOCTYPE html>
<html>
<head>
<style>
.center {
text-align: center;
color: red;
}
</style>
</head>
<body>
<h1 class="center">Red and center-aligned heading</h1>
<p class="center">Red and center-aligned paragraph.</p>
</body>
</html>
Működni lehet, hogy működni fog (gyorsan teszteltem Firefox 36.0.4, Google Chrome 41.0.2272.101, Opera 12.16, Internet Explorer 8 és 11 alatt - mindnél középen van a szöveg és piros), de ha átellenőrzöd a kódot a W3C (a HTML ajánlás - de facto szabvány - megalkotójának) eszközével ( [link] ), sérelmezni fogja, hogy nem szabványos (mint az se, hogy a <head> és </head> tagek között nincsen <title>).
Mint az a régi 4.0.1 ajánlásban szerepel is:
"This name must be unique in a document."
és az 5-ösben is:
"The value must be unique amongst all the IDs in the element's home subtree and must contain at least one character. The value must not contain any space characters."
A probléma majd Javascriptnél jön elő - ha kiadsz egy ilyen kódot:
alert(document.getElementById('center').innerHTML);
melyik elem tagjei között levő szöveget kellene visszaadnia? Az általam tesztelt böngészőknél túlnyomórészt az elsőt adják vissza...
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!