Selectorer

Når vi skal definere hvilke elementer som skal treffes av en CSS-regel, bruker vi selectorer for å beskrive settet med elementer.

Tag-selectorer

body, div, img, button

Treffer alle elementer med den gitte taggen.

body {
    background-color: aliceblue;
}

button {
    color: #1234ab;
}

Klasse-selectorer

.btn-danger, .btn-ok, .kall-det-hva-du-vil

Treffer alle elementer med den gitte klassen.

.btn-danger {
    background-color: red;
}

.btn-ok {
    background-color: green;
}

ID-selectorer

#hovedmeny, #animasjon

IDer må være unike, fordi css-regler for en ID gjelder for første matchende element. Som regel ønsker vi ikke å bruke ID-selectorer, fordi det er å foretrekke at vi har css-stiler som kan gjenbrukes. Hvis vi må style hvert element for seg, kan det fort bli vanskelig å vedlikeholde et konsekvent grensesnitt.

Avanserte selectorer

Det er helt uproblematisk å style ting ved å definere selectors inni selectors, bruke attributtmatching, tilstandsselectorer osv:

Men her må man holde tungen rett i munnen! Det enkleste er ofte det beste i css-verdenen, og flere mener det er best practice å ikke lage for kompliserte css-regler. På den måten blir det enklere både for fremtidige deg og for alle andre som skal jobbe med de samme stilene. Det er forøvrig ikke alltid like lett å vite hva salgs css-praksis som er lett å vedlikeholde over tid. Denne artikkelen forklarer hvordan Medium utviklet sine css-konvensjoner gjennom flere faser til de til slutt landet på noe de var rimelig fornøyd med.

Oppgave

  • Lag en CSS-fil og link til den i HTML-filen med knapper fra del 2.

  • Sett en bakgrunnsfarge på siden.

  • Endre font, farge og skriftstørrelse på teller-verdien.

  • Endre størrelse, bakgrunnsfarge, border/ramme og tekstfarge på knappene.

Last updated