webForumDet fria alternativet

Classer och användningsområde?

9 svar · 683 visningar · startad av Kalle M

Kalle MMedlem sedan mars 20041 936 inlägg
#1

När jag gjort en class så har jag gjort det för att formatera vissa ord i en tagg. Exempelvis inom en <p>.

.greenbakgrund {
	background-color: #00CC99;
}

När kan jag mer använda det?

Tack på förhand!

Danne VMedlem sedan aug. 20068 090 inlägg
#2

<p>Detta är <span class="greenbakgrund">ett</span> exempel.</p>

Kalle MMedlem sedan mars 20041 936 inlägg
#3

Jo men vad kan jag mer använda classer till mer än att formatera vissa ord med en bakgrund som är grön? :-)

jonneMedlem sedan jan. 20011 154 inlägg
#4

Gick vi inte igenom det nyss här och här? :)

dAEkMedlem sedan feb. 20041 816 inlägg
#5

Det är även vanligt att man använder css-klasser för att lägga in beteende-"hooks" för Javascript. En del tycker att koden blir ren och prydlig medan andra tycker att det är fel eftersom css-klasser är till för det utseende och inte beteende. De använder det ändå eftersom det egentligen inte finns nåt annat bra alternativ. Hur som helst, går man tillbaka och jämför med hur koden såg ut för en 5-10 år sedan inser man att det är bättre - oavsett om det är rätt eller fel.

zcorpanMedlem sedan dec. 20042 245 inlägg
#6

dAEk skrev:

andra tycker att det är fel eftersom css-klasser är till för det utseende och inte beteende.

class="" är inte "css-klasser" (lika lite eller mycket som de är "js-klasser") och har lika lite (eller mycket) med utseende att göra som med beteende.

HTML4 föreslår att id="" har en roll för att användas för både skript och för stilmallar, medan class="" inte föreslås att användas för skript; det har förmodligen att göra med att det inte fanns någon DOM API för class="" när HTML4 skrevs, vilket det finns idag (eller snart -- i Firefox 3 och Opera 9.5): getElementsByClassName().

dAEkMedlem sedan feb. 20041 816 inlägg
#7

zcorpan skrev:

class="" är inte "css-klasser" (lika lite eller mycket som de är "js-klasser") och har lika lite (eller mycket) med utseende att göra som med beteende.

Ah, my bad. Kollade på w3 och det stämmer ju det du säger - precis som vanligt. :bire

Jag har lite funderingar...

Är man flera som jobbar på samma projekt och någon får för sig att döpa om en css-klass måste man dubbelkolla javascripten också, så att det inte ligger nån hook där. Det blir lätt rätt jobbigt om det är en webbapplikation, där det oftast finns en massa js, det handlar om. För det mesta går det går det att undvika den här typen av problem genom att använda verb för beteendenklassnamn (draggable, sortable, movable) och substantiv för presentationen (content, article, preamble, footer). Det känns ändå som att man kan få problem förr eller senare, eller är det bara jag? Det är ju t.ex. lätt att falla dit och tänka att alla "draggables" ska ha en annan muspekare och så skapar man en css-klass med samma namn, bara för att ta ett exempel.

Finns det bättre sätt än att tänka i verb och substantiv? Hur gör ni andra?

tantenMedlem sedan nov. 20051 596 inlägg
#8

Tycker jag klarar mig långt med att alltid ha gemener i css och blanda in en versal i andra classer typ greenback och greenBack om de skulle heta samma...

dAEkMedlem sedan feb. 20041 816 inlägg
#9

Vilken av klasserna "greenback" och "greenBack" hör till js resp. css? Varför det, och varför inte tvärtom? Det känns inte helt logiskt, eller?

hltmMedlem sedan nov. 2004438 inlägg
#10

Vad gäller naming så tycker jag att det jag skrivit tididgare inför en redesign fortfarande har bäring :) :

Naming standard for all classes and id:s:
- Firstletter lowercase, second to N name Uppercase
Examples:
- main
- mainContent
- mainContentOffer

- Use generic, semantic names when naming classes and id:s
Correct:
- .fullLength, #productCategory : no properties (color, sizes in px) described in name, only function or placement

Not Correct:
- .orangeLong, .wide318 : color and size included in in name, what if it should change to be blue instead or set to 400px?
---------

Dessutom, jag rekommenderar att ge ett vettigt prefix på allt:
t ex om din firma heter berras webb; lägg till bw före.
Den dag du ska jobba med något större företag/partnerskap/white label osv inser du ofta snabbt att .content eller .menu riskerar att kollidera med det omgivande ramverket, bwMenu är lättare att hantera i s f... ;)

130 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)