Meir om selectorar
3 februar 2015Eg har plukka ut ti nyttige måtar å bruka selectorar på, dei fleste henta frå "The 30 CSS Selectors you Must Memorize". Lenkene til kvar selector nedanfor er til w3schools. Dei har også ei fullstendig liste over alle selectorar.
1: *
* { margin: 0; padding: 0; }
Dette er ein såkalt universell selector, og den gjeld for alle element på sida. Men dette er noke ein bør bruka med forsiktighet.
2: X
Her kan X stå for eit navngitt element td a eller ul:a { color: red; } ul { margin-left: 0; }
Hvis du bare vil gi ein stil til ein spesiell type element, feks. alle
lenker, så bruker du type
.
Her får alle lenker raud farge, mens alle punktlister får 0 venstremarg.
3: #X
Her står X for ein id som du sjøl har gitt navn til, feks. id="container"#container { width: 960px; margin: auto; }
Her velger vi ut element med eit bestemt id
.
Men dette er ikkje noke du vanligvis treng. Prøv heller å plukka ut
element med typenavnet som over, eller ein klasse, som nedanfor.
4: .X
.error { color: red; }
Dette er class
selectoren. Denne kan du bruka når du har mange element av ulik type som
du vil gi samme stil.'
5: X, Y
Her er X og Y to navngitte element, td. p og div:p, div { text-decoration: none; }
Hvis du vil ha samme stil på to eller fleire element, kan du bare laga ei kommaseparert liste. Dette eksempelet gir samme stil til alle p og div-element.
6: X Y
Her er X og Y, som over, to navngitte element, td. li og a:li a { text-decoration: none; }
Denne heiter på engelsk descendant
selector. På norsk kan vi kalla det for etterkommar-selector. I eksempelet
plukkar den ut alle lenker (a) som er innanfor eit listeelement (li) Vi
kan sei at lenker då er ein etterkommar til liste-elementet. Her kan du ha
mange nivå med avkom av etterkommarar. Du bruker den når du, som i dette
tilfellet, ikkje vil gi denne stilen til alle lenkene, men bare dei som er
i lister. Dette er ofte nyttig når du skal laga menyar.
7: X > Y
Her er X og Y fremdeles to navngitte element som td. li og a:li > a { text-decoration: none; }
Denne kan vi kalla for barne-selectoren. Den virkar som etterkommer-selectoren over, men bare på dei direkte etterkommarane, dvs barn. I eksempelet plukkar den ut alle lenker (a) som er innanfor eit listeelement (li), men ikkje hvis det er nivå imellom. Det vil altså ikkje virka på td.
<li><span><a ...>.
8: a:visited og a:link
a:link { color: red; } a:visited { color: purple; }
Dette eksempelet gir stiler til lenker på ein spesiell måte. :link
viser til lenker som brukaren ikkje har klikka på, og :visited
viser til alle dei du har klikka
på.
9: X:hover
Her er X ofte ei lenke (dvs. a) men det vera kva element som helst, td. ein div:div:hover { background: #e3e3e3; }
Hover gir
stil til ein div når markøren er over den. I dette tilfellet får den ny
bakgrunnsfarge. Denne måten er ofte også brukt til lenker, som feks. å
gi ein border-bottom
til lenker når markøren er over
dei.
a:hover { border-bottom: 1px solid black; }
10: X::pseudoElement
Her kan X vera ein selektor, og pseudoElement kan td. vera first-line eller first-letter, som i disse eksempela:p::first-line { font-weight: bold; font-size: 1.2em; }
Dette kallast for pseudo elements (når vi bruker ::
). Det
kan vera nyttig til for eksempel å gi ein stil til første
linja i eit avsnitt, som over, eller den første
bokstaven i eit avsnitt, som under.
p::first-letter { float: left; font-size: 2em; font-weight: bold; font-family: cursive; padding-right: 2px; }