Kom ihåg mig?
Home Menu

Menu


Jag använder aldrig class, är det fel?

 
Ämnesverktyg Visningsalternativ
Oläst 2008-06-05, 01:28 #1
Thir13teens avatar
Thir13teen Thir13teen är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Oct 2004
Inlägg: 767
Thir13teen Thir13teen är inte uppkopplad
Mycket flitig postare
Thir13teens avatar
 
Reg.datum: Oct 2004
Inlägg: 767
Vi har ju ID och class att välja på och för att undvika krångel så mycket som möjligt använder jag nu alltid ID, aldrig class. Jag vet att ID ska använda när det bara förekommer en gång och class vid flera förekomster. Eller var det tvärtom? :blink:

Jag har aldrig haft några problem med detta, sidorna visas som de ska och koden validerar. Och jag behöver inte hålla reda på när det ska vara . eller # i CSS:en, nu vet jag att det alltid är #.

Kan någon komma med någon anledning till varför detta skulle vara fel?
Thir13teen är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-06-05, 02:46 #2
Alexs avatar
Alex Alex är inte uppkopplad
Administratör
 
Reg.datum: Sep 2004
Inlägg: 1 621
Alex Alex är inte uppkopplad
Administratör
Alexs avatar
 
Reg.datum: Sep 2004
Inlägg: 1 621
För att det är fel. Visas säkert fel någonstans i någon webbläsare. Följ standarden så slipper du problem i framtiden. Det är dessutom mycket skönare att kunna skilja på "dynamisk design" och "statisk design".

Det är precis som du säger. Id används en gång, och class skall användas när du har element du vill cssa fler gånger.
__________________
@Zn4rK - Börja blogga - Paintball i Göteborg
Det jag skriver är mina personliga åsikter och återspeglar inte vad WN eller andra företag jag representerar tycker.
Alex är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-06-05, 03:05 #3
Thir13teens avatar
Thir13teen Thir13teen är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Oct 2004
Inlägg: 767
Thir13teen Thir13teen är inte uppkopplad
Mycket flitig postare
Thir13teens avatar
 
Reg.datum: Oct 2004
Inlägg: 767
Citat:
Originally posted by Alex@Jun 5 2008, 02:46
För att det är fel. Visas säkert fel någonstans i någon webbläsare.
Tack för svar men är inte övertygad.

Grejen är att jag skriver en guide om CSS för nybörjare och det vore så mycket skönare kunna att skriva "använd ID" istället för "använd ID då och då och annars Class" i denna guide där läsaren redan har fullt upp med att lära sig nya saker.

Keep 'em coming.
Thir13teen är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-06-05, 03:21 #4
Onkelborg Onkelborg är inte uppkopplad
Flitig postare
 
Reg.datum: Feb 2007
Inlägg: 382
Onkelborg Onkelborg är inte uppkopplad
Flitig postare
 
Reg.datum: Feb 2007
Inlägg: 382
Om jag skulle välja så skulle jag välja class, id är starkt begränsat i användbarhet jämfört med class..
Onkelborg är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-06-05, 03:44 #5
rille77s avatar
rille77 rille77 är inte uppkopplad
Medlem
 
Reg.datum: Dec 2003
Inlägg: 213
rille77 rille77 är inte uppkopplad
Medlem
rille77s avatar
 
Reg.datum: Dec 2003
Inlägg: 213
Citat:
Originally posted by Thir13teen@Jun 5 2008, 03:05
Grejen är att jag skriver en guide om CSS för nybörjare och det vore så mycket skönare kunna att skriva "använd ID" istället för "använd ID då och då och annars Class" i denna guide där läsaren redan har fullt upp med att lära sig nya saker.
Varföt lära ut fel när man kan lära ut rätt?

Skulle även vara kul att veta hur du lyckas validera en XHTML sida med flera likadana ID
rille77 är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-06-05, 03:52 #6
Thir13teens avatar
Thir13teen Thir13teen är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Oct 2004
Inlägg: 767
Thir13teen Thir13teen är inte uppkopplad
Mycket flitig postare
Thir13teens avatar
 
Reg.datum: Oct 2004
Inlägg: 767
Citat:
Ursprungligen postat av rille77
Citat:
Ursprungligen postat av Thir13teen
Grejen är att jag skriver en guide om CSS för nybörjare och det vore så mycket skönare kunna att skriva "använd ID" istället för "använd ID då och då och annars Class" i denna guide där läsaren redan har fullt upp med att lära sig nya saker.

Varföt lära ut fel när man kan lära ut rätt?

Skulle även vara kul att veta hur du lyckas validera en XHTML sida med flera likadana ID
Du citerade svaret på din egen fråga.

Ok, class är bevisligen ett bättre val än ID då flera likadana ID inte blir validerat. Men, kan någon ge någon bra förklaring varför man inte alltid skulle använda class då?
Thir13teen är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-06-05, 08:01 #7
crazzys avatar
crazzy crazzy är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Aug 2007
Inlägg: 1 089
crazzy crazzy är inte uppkopplad
Har WN som tidsfördriv
crazzys avatar
 
Reg.datum: Aug 2007
Inlägg: 1 089
Citat:
Originally posted by Thir13teen@Jun 5 2008, 02:52
kan någon ge någon bra förklaring varför man inte alltid skulle använda class då?
document.getElementById('lol'); ???
crazzy är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-06-05, 08:22 #8
Syke Syke är inte uppkopplad
Medlem
 
Reg.datum: Mar 2008
Inlägg: 297
Syke Syke är inte uppkopplad
Medlem
 
Reg.datum: Mar 2008
Inlägg: 297
ID ska användas när elementet förekommer en gång. Class ska användas när element förekommer flera gånger. Om du ska skriva dokumentation och är orolig för hur läsaren kommer att reagera på att använda "#" vs. "." hur förvirrade kommer de då inte bli av alla andra selectors? Skriv hellre isåfall att för enkelhetens skulle använder vi oss enbart av klasser, även om det inte är rätt och det finns många andra sätt att träffa olika element med css:en.

IDn och klasser har även olika "vikt" (specificitet) vid arv och cascading.

Klasser kan, som tidigare nämnts, användas flera gånger och är då bättre att använda för generella saker som återkommer i sidan. T.ex. en paragraf med text som ska ha en viss färg, ett visst typsnitt, en viss bakgrundsbild och en viss storlek. Denna texttyp kanske man vill återanvända på flera olika ställen i sidan och då blir det snabbt omständigt med ID.

Om det finns en av dessa paragrafer som ska ha utseendet ovan men även en annan bakgrundsbild, ja då är det väldigt bra att kunna först ge paragrafen den generella klassen, och sedan ge den en flummig bakgrundsbild med en ID (det går såklart även med en till klass, men då måste man se upp vart i CSS:en man placerar klassen så den inte skrivs över).

Det finns även fler anledningar till att båda bör användas. T.ex. kan du länka till element med ett ID, men inte ett med en klass.

Slutsats: Båda behövs, lär ut rätt från början, annars gör du dem en björntjänst!

Här är några länkar där du kanske hittar lite mer info:
http://www.tizag.com/cssT/cssid.php
http://www.w3.org/TR/CSS21/selector....elector-syntax
http://css-discuss.incutio.com/?page=ClassesVsIds
Syke är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-06-05, 08:36 #9
jonny jonny är inte uppkopplad
Supermoderator
 
Reg.datum: Sep 2003
Inlägg: 6 941
jonny jonny är inte uppkopplad
Supermoderator
 
Reg.datum: Sep 2003
Inlägg: 6 941
Det hela är egentligen ganska enkelt.

Class skulle man kunna kalla grupp. När du har flera olika element som ska ha samma egenskaper kan du använde en class.

Id ska vara en unik identifierare. Du kan använda de båda i kombination.

Tänk dig att du har fem knappar. Alla knappar är likadana med undantag för en knapp som är röd.

Du kan då använda class för att sätta de gemensamma egenskaperna på alla knappar och så id på den röda knappen för att göra den röd.

Ett element kan också ha flera klasser men bara ett id.
jonny är inte uppkopplad   Svara med citatSvara med citat
Oläst 2008-06-05, 08:37 #10
HMHs avatar
HMH HMH är inte uppkopplad
Nykomling
 
Reg.datum: May 2004
Inlägg: 45
HMH HMH är inte uppkopplad
Nykomling
HMHs avatar
 
Reg.datum: May 2004
Inlägg: 45
Citat:
Originally posted by Thir13teen@Jun 5 2008, 02:52
kan någon ge någon bra förklaring varför man inte alltid skulle använda class då?
Vid användning av ankarlänkar:
http://www.dinsida.se/lol.html#AnkarID


...eller kanske mest för att slippa problem då du t ex vill override:a en klass:

Kod:
<style type="text/css>
  #DittSpecifikaElement
  {
    color: #f00;
  }
  .enGenerellKlass
  {
    font-size: 2em;
    font-weight: bold;
    color: #000;
  }
</style>

<div class="enGenerellKlass">En svart stor fet text</div>
<p class="enGenerellKlass">En svart stor fet text</p>
<span class="enGenerellKlass">En svart stor fet text</span>

<div id="DittSpecifikaElement" class="enGenerellKlass">En röd stor fet text</div>
Dvs ID har högre specificitet än class vilket kan vara väldigt användbart för att slippa trassla in sig i överlagringar och onödigt användande av !important.
HMH är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 17:39.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017