Nja... jag hade snarare tänkt mig att alla attribut som finns i klassen .menubutton skall ärvas till den nya klassen/klasserna.
Anledningen till att jag vill göra det, är att jag vill slippa skriva alla attribut en gång till i klassen. Inte för att det är jobbigt, men för att css-filen skall bli mindre och för att alla klasserna skall bli mer "dynamiska". D.v.s. ändrar jag i superklassen (som alla subklasser ärver från) så skall förändringarna slå igenom i alla subklasser.
Jag hade tänkt mig något liknande:
.newbutton extends menubutton {
color:#00000;
}
Klassen .newbutton får nu alla attribut som menubutton, men får svart textfärg istället, som enda skillnad. (Lånade in lite java-syntax, men ni förstår säkert hur jag menar. :) )
Jag tyckte att det skulle bli en bra lösning, men klasser kanske inte fungerar på samma sätt i CSS som i objektorienterade språk??
Hmm...
Med en effektiv användning av "cascading" i CSS (dvs om du utnyttjar möjligheten att "dela upp" dina deklarationer i flera på varandra följande stilregler även för en och samma klass eller en och samma tagg) så kommer du ganska nära ditt lite mer "objektiga" sätt att tänka... Trots bristen på möjlighet att "subklassa" i CSS
Exempel
Jag brukar köra nånting i stil med det här när jag vill "subklassa" i CSS:
/* Först deklarerar man allt gemensamt grundutseende
för alla klasser/subklasser som hör ihop */
.menubutton,
.newbutton,
.stupidbutton {
width:105px;
height:18px;
text-align:center;
font-size:11px;
font-weight:bold;
color:#314173;
background-color:#8998BE;
cursor:pointer;
}
/* Sedan bygger man ut "subklasserna" en efter en...
.newbutton {
color:#00000;
}
.stupidbutton {
color:red;
background-color:green;
}
Senast deklarerade värde gäller! ;)
På så sätt kan man köra med HTML-kod typ: