CSS-selectors

Når du skriver en css-regel bruker du en css-selector til å bestemme hvilket/hvilke elementer regelen skal gjelde for.

tag-selector

div {
  color: green;
}

Her gjelder regelen for alle <div> i dokumentet, de får grønn skriftfarrge.
Dette er et eksempel på en tag - selector (slik som div span p article table td li ol ul ...)

id-selector

#main {
  background-color: yellow;
}

Denne selectoren velger et element i dokumentet som har id="main" , f.eks <div id="main">. Alle tagger kan gis en id, men hver id skal være unik - bare brukes en gang.

class-selector

.skyer {
  background-color:whitesmoke;
}

Dette er en class-selector, denne klassen kan settes på mange forskjellige elementer som vist under

<div class="skyer"></div>
  <span class="skyer"></span>
  <p class="skyer"> </p>

Klasser brukes dersom regelen skal gjelde for mer enn ett element (men ikke alle av denne typen),
for elementer av forskjellige typer.

pseudo-selector

div:hover {
  color: blue;
  transition: 1s;
}

En pseudo-selector som gjelder for element når pekeren er over elementet. Kan brukes til å framheve det elementet
pekeren er over - ofte en link ( <a> ). Transition gjør at endringen fra normalt utseende skjer gradvis (1s).

En liste over vanlige pseudo-class selectors

  • :active a:active - en link som brukeren klikker på
  • :checked radio eller checkbox, style for de som er valgt
  • :focus typisk input element, input:focus - brukeren har markør inne i elementet
  • :hover muspeker er over elementet, div:hover
  • :nth-of-type() tr:nt-of-type(odd) - alle odde rader i en tabell, kan også bruke (even)
  • :valid typisk en input:valid - dersom det brukeren skriver er ok kan du vise dette med css
  • :visited a:visited regel som gjelder for besøkte linker

sammensatte selectors

div.skyer {
   /*  alle diver som har klassen skyer */
}

<div class="skyer">regelen gjelder meg</div>


#main p {
  /* alle paragrafer inne i elementet med id="main" */
}

<div id="main">
  <p>denne</p>
  <p>og denne</p>
</div>
Etterkommere
div div p span {
  /* en span inne i en paragraf inne i en div i en div */
}

<div>
  <div>
    <p>
      <span>gjelder meg</span>
Barn
div > span {
  /* alle span som er direkte inne i en div */
}

<div>
  <span>gjelder meg</span>
  <p>
    <span>men ikke meg - fordi jeg er inne i en p </span>
Nære Naboer
h2 + p {
  /* alle p som følger rett etter en h2 */
}

<h2>Overskrift</h2>
<p> gjelder meg</p>
<p> men ikke meg</p>
Fjerne Naboer
h2 ~ p {
  /* alle p som følger etter en h2 */
}

<h2>Overskrift</h2>
<p> gjelder meg</p>
<p> og meg også</p>

results matching ""

    No results matching ""