HTML Academy · leksjon

Elementene span og div

Bruk generiske inline- og blokkcontainere som kroker for styling.

Leksjon 4 av 413 trinn

Elementene span og div er en gratis leksjon i HTML Academy på CoddyKit. Dette er leksjon 4 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i HTML Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i HTML Academy inneholder totalt 4 leksjoner.

Generiske containere

HTML har to generiske, semantisk nøytrale containerelementer:

  • <div> — en container på blokknivå
  • <span> — en inline-container

De har ingen betydning i seg selv — de finnes utelukkende som kroker for stilsetting og skripting.

div-elementet

<div> er en container på blokknivå — den oppretter en ny linje før og etter seg:

<div class="card">
  <h2>Card Title</h2>
  <p>Card content here.</p>
</div>

<div class="sidebar">
  <p>Sidebar content.</p>
</div>
<!-- div groups related elements for CSS layout or JavaScript selection -->

span-elementet

<span> er en inline-container — den flyter sammen med teksten:

<p>The price is <span class="price">$29.99</span> per month.</p>

<p>Error: <span class="error-text" role="alert">Invalid email address</span></p>

<!-- span targets a part of text for styling or scripting
     without adding block-level line breaks -->

Når div skal brukes i stedet for semantiske elementer

Før De velger <div>, bør De undersøke om et semantisk element passer:

  • Sidehode → <header>
  • Navigasjon → <nav>
  • Hovedinnhold → <main>
  • Blogginnlegg → <article>
  • Sidestolpe → <aside>
  • Sidefot → <footer>

Bruk <div> bare når ingen semantiske elementer passer.

Divitis

Divitis — overdreven bruk av <div> til alt:

<!-- Divitis: meaningless nesting -->
<div class="header">
  <div class="nav">
    <div class="nav-item"><a href="/">Home</a></div>
  </div>
</div>

<!-- Better: semantic HTML -->
<header>
  <nav>
    <a href="/">Home</a>
  </nav>
</header>

CSS-kroker med class og id

Både <div> og <span> brukes med attributtene class eller id for målretting i CSS:

<div class="hero-section">
  <h1>Welcome</h1>
  <p>Text with a <span class="highlight">highlighted phrase</span> inside.</p>
</div>

<!-- CSS: -->
<!--
.hero-section { background: #f0f4f8; padding: 2rem; }
.highlight { background-color: yellow; font-weight: bold; }
-->

Målretting med JavaScript

<div> og <span> er også mål for JavaScript:

<span id="counter">0</span>

<script>
  const counter = document.getElementById('counter');
  let count = 0;
  setInterval(() => {
    count++;
    counter.textContent = count;
  }, 1000);
</script>

Regler for nøsting

Nøstingsregler for generiske containere:

  • <div> kan inneholde <div> og <span>
  • <span> kan bare inneholde <span> og inline-innhold
  • Ikke plasser <div> inne i <span>
<span>
  Inline text
  <span>Nested span OK</span>
  <!-- <div> inside span: INVALID -->
</span>

div for layout

Vanlig layoutmønster med div-elementer:

<div class="layout">
  <div class="sidebar"><!-- sidebar --></div>
  <div class="content"><!-- main content --></div>
</div>

<!-- CSS Grid layout: -->
<!--
.layout { display: grid; grid-template-columns: 250px 1fr; gap: 1rem; }
-->

span for inline-stilsetting

Vanlige mønstre for inline-stilsetting:

<p>Status: <span class="badge badge-success">Active</span></p>

<p>Price: <span style="color: red; text-decoration: line-through;">$50</span>
        <span style="color: green; font-weight: bold;">$30</span></p>

div og span er usynlige

Som standard er <div> og <span> usynlige omslag:

  • <div> legger ikke til visuell stil utover blok visning
  • <span> legger ikke til noen stil i det hele tatt
  • All utforming kommer fra CSS-en De bruker
  • Dette gjør dem til perfekte nøytrale containere

Hurtigsjekk

Hvilket element bør De bruke for å stilsette ett enkelt ord i et avsnitt?

Oppsummering: span og div

Det viktigste om generiske containere:

  • <div> — på blokknivå, grupperer elementer for layout
  • <span> — inline, målretter deler av teksten for stilsetting
  • Begge er semantisk nøytrale — de tilfører ingen betydning
  • Foretrekk semantiske HTML5-elementer når de passer
  • Bruk class og id for å koble dem til CSS og JavaScript
Gratis å komme i gang

Lær deg HTML med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
40
Leksjoner
159

Ofte stilte spørsmål

Er leksjonen «Elementene span og div» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien HTML Academy, inkludert «Elementene span og div», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i HTML Academy inneholder totalt 4 leksjoner.

Hva lærer jeg i «Elementene span og div»?

Bruk generiske inline- og blokkcontainere som kroker for styling. Du øver på HTML Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med HTML Academy?

Ingen tidligere erfaring er nødvendig. HTML Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 4 av 4.

Hvor lang tid tar leksjonen «Elementene span og div»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne HTML Academy-leksjonen?

Ja. Alle HTML Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Overskrifter h1–h6 og hierarkiet deres
  2. Avsnitt, em, strong og b, i
  3. br, hr, blockquote og pre
  4. Elementene span og div
← Tilbake til HTML Academy