Lenker i HTML

Lær hvordan du lager effektive og tilgjengelige lenker for navigasjon på nettet.

Hva er HTML-lenker?

HTML-lenker, også kjent som hyperlenker, er det som gjør verdensveven til et "vev" av sammenkoblede sider. De lar brukere navigere mellom ulike nettsider og ressurser ved å klikke på tekst, bilder eller andre elementer. Lenker er en av de mest grunnleggende og viktige byggesteinene i HTML.

Tenk på lenker som digitale veiskilt som:

  • Kobler sammen ulike nettsider og dokumenter
  • Lar brukere navigere rundt på din nettside
  • Gir tilgang til nedlastbare ressurser
  • Muliggjør interaksjon som e-post og telefonoppringning

Grunnleggende om Lenker

I HTML skaper vi lenker ved hjelp av <a> elementet (anchor). Dette elementet forteller nettleseren at innholdet mellom åpnings- og slutt-taggen skal være klikkbart og føre brukeren til et nytt sted.

Grunnleggende lenkestruktur:

<a href="målside.html">Lenketekst</a>

La oss bryte ned de viktigste delene av en lenke:

  • href (Hypertext Reference):
    • Dette er den viktigste attributten for lenker
    • Spesifiserer målet lenken skal peke til
    • Kan være en nettadresse, filbane, eller et ankerpunkt
  • target:
    • Bestemmer hvordan lenken skal åpnes
    • _self - Åpner i samme vindu/fane (standard)
    • _blank - Åpner i ny fane eller vindu
  • title:
    • Gir ekstra informasjon om lenken
    • Vises som en tooltip når man holder musepekeren over lenken
    • Nyttig for tilgjengelighet og brukervennlighet
  • rel:
    • Definerer forholdet mellom nåværende side og målsiden
    • Viktig for sikkerhet og SEO
    • Eksempel: noopener noreferrer for eksterne lenker

Typer Lenker

Det finnes flere typer lenker, og hver type har sitt spesifikke bruksområde. Valget av lenketype avhenger av hva du vil oppnå og hvor ressursen du lenker til befinner seg.

1. Relative Lenker

Relative lenker spesifiserer stien til målet i forhold til den nåværende siden. Dette er som å gi veibeskrivelser ved å si "gå to hus til høyre" i stedet for å oppgi hele adressen.

Eksempler på relative lenker:


<a href="kontakt.html">Kontakt oss</a>


<a href="bilder/foto.jpg">Se bilde</a>


<a href="../index.html">Tilbake til forsiden</a>

Slik fungerer relative stier:

  • filnavn.html - Fil i samme mappe
  • mappe/filnavn.html - Fil i undermappe
  • ../filnavn.html - Fil i overordnet mappe
  • ../../filnavn.html - Fil to nivåer opp
  • ./filnavn.html - Eksplisitt referanse til nåværende mappe

Fordeler med relative lenker:

  • Fungerer selv om hele nettstedet flyttes til en annen server
  • Kortere og mer lesbar kode
  • Enklere å vedlikeholde
  • Raskere lasting siden nettleseren vet det er samme server

2. Absolutte Lenker

Absolutte lenker inneholder den fullstendige URL-en (nettadressen) til målsiden, inkludert protokoll (http:// eller https://) og domenenavn. Dette er som å gi noen en fullstendig adresse med gate, husnummer, postnummer og by.

Eksempel på absolutt lenke:

<a href="https://www.eksempel.no/side.html">Besøk eksempel.no</a>

Anatomien til en absolutt URL:

  • https:// - Protokollen som brukes (sikker HTTP)
  • www - Subdomene (valgfritt)
  • eksempel.no - Hoveddomenet
  • /side.html - Stien til spesifikk side

Når bør du bruke absolutte lenker:

  • Lenker til eksterne nettsider
  • Når du trenger å spesifisere protokoll (https://)
  • I e-poster eller dokumenter som refererer til nettsiden din
  • Når ressursen ligger på en annen server

3. Ankerlenker

Ankerlenker, også kjent som fragmentlenker eller bokmerker, lar deg navigere til spesifikke seksjoner på en nettside. Dette er spesielt nyttig på lange sider hvor du vil hjelpe brukeren å hoppe direkte til relevant innhold.

Eksempel på ankerlenker:


<h2 id="seksjon1">Seksjon 1</h2>


<a href="#seksjon1">Gå til Seksjon 1</a>


<a href="side.html#seksjon1">Gå til Seksjon 1 på annen side</a>

Slik fungerer ankerlenker:

  • Elementet du vil lenke til må ha en unik id
  • Lenken starter med # fulgt av id-en
  • Nettleseren vil automatisk rulle til det spesifiserte elementet
  • Kan kombineres med både relative og absolutte lenker

Vanlige bruksområder for ankerlenker:

  • Innholdsfortegnelse på lange sider
  • "Tilbake til toppen" knapper
  • FAQ-sider med spørsmål som lenker til svar
  • Dokumentasjon med kryssreferanser

Avanserte Lenkefunksjoner

Lenker som åpnes i ny fane

<a href="https://eksempel.no" target="_blank" rel="noopener noreferrer">
    Åpne i ny fane
</a>

Viktig å merke seg:

  • Bruk target="_blank" med varsomhet - det kan forstyrre brukeropplevelsen
  • Alltid inkluder rel="noopener noreferrer" for sikkerhet når du bruker target="_blank"
  • Informer brukeren hvis lenken åpnes i ny fane

Sikkerhet med rel-attributtet

Når du lager lenker som åpnes i nye faner/vinduer (target="_blank"), er det viktig å forstå sikkerhetsimplikasjonene og hvordan rel-attributtet kan hjelpe:

Sikker ekstern lenke:

<a href="https://eksempel.no" 
   target="_blank" 
   rel="noopener noreferrer">
    Ekstern lenke
</a>

La oss forstå hva disse sikkerhetsattributtene gjør:

1. noopener
  • Forhindrer at den nye siden får tilgang til window.opener-objektet
  • Beskytter mot "reverse tabnabbing" angrep hvor den nye siden kan manipulere den originale siden
  • Den nye siden kan ikke kjøre JavaScript som påvirker siden som åpnet den

Eksempel på sikkerhetsrisiko uten noopener:
Uten noopener kunne en ondsinnet nettside gjøre dette:

// På den eksterne siden:
if (window.opener) {
    window.opener.location = "ondsinnet-side.html";
}
2. noreferrer
  • Skjuler referrer-informasjon for den nye siden
  • Den nye siden vil ikke vite hvilken side brukeren kom fra
  • Gir ekstra personvern ved at man ikke avslører navigasjonsstien
  • Støtter eldre nettlesere som ikke forstår noopener

Når bør du bruke disse attributtene?

  • Alltid når du bruker target="_blank"
  • På alle lenker til eksterne nettsider
  • Når du ikke stoler 100% på målsiden
  • For å beskytte brukerens personvern

Beste praksis:
Gjør det til en vane å alltid inkludere begge attributtene for eksterne lenker:

<!-- Intern lenke - trenger ikke noopener/noreferrer -->
<a href="/intern-side.html">Intern side</a>

<!-- Ekstern lenke - bruk alltid noopener noreferrer -->
<a href="https://ekstern-side.no" 
   target="_blank" 
   rel="noopener noreferrer">
    Ekstern side
</a>

E-post og Telefonlenker

E-postlenke:

<a href="mailto:kontakt@eksempel.no">Send e-post</a>

<!-- Med forhåndsutfylt emne og innhold -->
<a href="mailto:kontakt@eksempel.no?subject=Henvendelse&body=Hei">
    Kontakt oss
</a>

Telefonlenke:

<a href="tel:+4712345678">Ring oss: +47 123 45 678</a>

Nedlastingslenker

<a href="dokument.pdf" download="filnavn.pdf">
    Last ned PDF
</a>

Tips for nedlastingslenker:

  • Bruk download attributtet for å foreslå filnavn
  • Informer om filtype og størrelse
  • Vurder å legge til ikoner for å indikere filtype

Beste Praksis for Lenker

Tips for gode lenker:

  • Bruk beskrivende lenketekst (unngå "klikk her")
  • Sørg for god kontrast mellom lenker og vanlig tekst
  • Gjør det tydelig hvilke lenker som går til eksterne sider
  • Test at alle lenker fungerer
  • Bruk konsistent styling for lenker på hele nettstedet
  • Tenk på universell utforming - lenker skal være tydelige også for skjermlesere