Css-ben ki lehet választani úgy egy elemet, hogy az összeset szeretnénk kivéve egy adott id-val rendelkezőt?
Ha ugyanis az adott id-t default szeretnénk és minden mást nem,
akkor fölösnek tűnik a default értéket úgy visszaállítani,
hogy egy id kiválasztóval visszaállítunk minden tulajdonságot, amit egyszer elállítottunk.
pl.:
body
{
background-color:#d0e4fe;
}
h1#egyediid
{
background-color:black;
}
Az a lényege az id-nek, hogy egy adott dolgot megkülönböztethess a defaulttól. Ha általános tulajdonságokat akarsz elemeknek megadni, használj class-t (h1.sokanvagyukezértaclass), vagy egyszerűen az elem nevét (pl body, h1). Ha megkülönböztetsz dolgokat, akkor jöhet az id (h1#különbözöksokanvagyunkéktól)
Azt magyarázom, hogy én az id-nek szeretném a defaultot, és a többinek meg egy csomó változást.
Pl minden linknek meg szeretném változtatni a színét és mindenféle tulajdonságát az egész oldalon, de van egy, amit szeretnék, ha érintetlenül hagy azaz nem változtatja meg defaulról arra, amit megadtam.
Ezt én egyelőre csak így tudom:
a {csomó tulajdonság}
a:visited {color:hupilila}
a#myid {default értékek visszaállítása}
a#myid:visited {default érték visszaállítása}
Ezzel az a probléma, hogy szerintem fölösleges kétszer kiírni a sok tulajdonságot. Másrész tudni kell, hogy mi vlt a default, pedig én automatikusan a default-ot szeretném ,anélkül , hogy tudnám mi az.
Először is tisztázzuk, mi az a default: a default kb. alapbeállítást jelent (ebben az esetben). Mármost: ha a legtöbb linket más színűre akarod: akkor miért nem hagyod azokat defaulton:
a{color: #0000ff;}
ha nem elég egy nagy csoport, akkor class segítségével ezen belül a nagy csoporton belül is kijelölhetsz linkeket, és megváltoztathatod a színüket:
a.tizdarablinkidje{color: #ff0000;}
és ha még ez sem jó, akkor a bal oldali div id="bal" helyzetben lévő blokk linkjeinek is adhatsz más színt
div#bal a{color: #00FF00;}
és ha csak egyet akarsz megkülönböztetni:
a#egyetlenaidje{color:#ffffff;}
lehet félreértelek és valamilyen rosszul programozott lapon szeretnél dolgozni, ahol nem nyúlhatsz hozzá az idk-hez és a class-khoz. Ez esetben használj css selectorokat, itt olvashatsz róluk:
Ezeknél már vigyázz jobban, nem mindegyik "cross-browser" megoldás.
a.tizdarablinkclassa akart lenni :)
A lényege a hsz-nek: tanulj meg rugalmasan gondolkozni, mert különben nem fognak menni ezek a dolgok. Css esetén mindig próbálj tulajdonságok szerint a nagyobb halmaz felől a kicsi felé haladni, így kisebb marad a css fájlod, átláthatóbb a szerkezete.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, 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!