Načrtovanje in razvoj spletnih aplikacij

HTML sintaksa - dodatna pravila

Splošno pravilo za opis elementa je razmeroma preprosto. Obstaja pa še nekaj dodatnih zahtev in pravil, ki jih moramo tudi upoštevati.

Gnezdenje

Kadar pri opisovanju vsebine enega elementa uporabimo več oznak, pravimo da pride do gnezdenja oznak. V takem primeru moramo paziti, da zaključne oznake pišemo v pravem vrstnem redu. Najprej moramo zaključiti opis notranje oznake, šele potem zunanje.

<div><b><i> ... </i></b></div>
<div><b><i> ... </b></i></div> Nepravilno gnezdenje!

Pazi na pravilen vrstni red zaključevanja oznak!

Zaključevanje elementov brez vsebine

Nekateri elementi imajo vedno prazno vsebino, navadno pri teh elementih v klasičnem HTML ne pišemo zaključne značke:

<br>
<hr>
<img src="goba.png" alt="Goban">

XHTML in HTML5 zahtevata zaključno značko v vsakem primeru. Tako za imenom oznake postavimo presledek, na koncu začetne značke pa napišemo znak /:

<br />
<hr />
<img src="goba.png" alt="Goban" />

Lastnosti brez vrednosti

Elementi v klasičnem HTML poznajo tudi nekaj posebnih lastnosti, ki nimajo vrednosti. Takim lastnostim rečemo logične lastnosti. Ime logične lastnosti napišemo, če element ima to lastnost, oziroma je ne napišemo, če element te lastnosti nima.

<option value="m" selected>moški</option>

XHTML zahteva, da ima vsaka lastnost elementa svojo vrednost. Logične lastnosti v XHTML imajo za vrednost kar ime lastnosti.

<option value="m" selected="selected">moški</option>

Možne poenostavitve HTML oznak

Da bo napisana koda v skladu z XHTML in HTML5 bodi pozoren da:

  • zaključne oznake ne bodo opuščene
  • bo napisano celotno ogrodje HTML
  • bodo vrednosti lastnosti vedno zapisane v narekovajih
  • bodo HTML oznake in lastnosti ter njihove vrednosti zapisane samo z malimi črkami

Pri klasičnem HTML smo lahko uporabljali tudi nekatere poenostavitve, ki pa jih danes ne smemo več, če želimo, da je zapisana koda v skladu z zahtevami HTML5. Možne poenostavitve so bile:

  • Opuščanje zaključnih oznak: Pri nekaterih elementih nam zaključnih oznak ni treba pisati, čeprav imajo neprazno vsebino. To je običajno pri elementih, ki za vsebino ne morejo imeti elementa iste vrste. Elementa je konec, kjer se pojavi nov element iste vrste ali pa kjer je zaključen element, ki ga vsebuje. HTML5 takšnega opuščanja de dovoljuje!
  • Opuščanje začetnih in zaključnih oznak: V klasičnem HTML nam pri nekaterih elementih ni treba pisati nobene oznake. To je običajno pri elementih, ki v vsakem dokumentu nastopajo na točno določenem mestu in imajo vsebino predpisane oblike. Če začetne in končne oznake takega elementa ne navedemo, bo brskalnik sam ugotovil, kje bi ti oznaki morali biti, in se bo obnašal, kot da smo ju tam napisali. Tipičen primer je opuščanje oznak pri elementih html, head in body. HTML5 takšnega opuščanja oznak ne dopušča.
  • Opuščanje narekovajev pri vrednostih: V klasičnem HTML lahko vrednosti posameznih lastnosti v začetnih oznakah pišemo v narekovajih (enojnih ali dvojnih), ni pa nujno, razen če vrednost lastnosti vsebuje kakšen presledek.
    HTML5 zahteva, da vrednosti lastnosti vedno pišemo v narekovajih (enojnih ali dvojnih). Zaradi preglednosti je priporočljivo, da v celem dokumentu uporabljamo samo eno vrsto narekovajev.
  • Uporaba malih in velikih črk: Klasični HTML v oznakah ne razlikuje med malimi in velikimi črkami, torej lahko imena elementov, imena njihovih lastnosti in tudi same vrednosti pišemo z malimi črkami, velikimi črkami ali pa celo kombinirano. Z nepremišljeno uporabo malih in velikih črk bomo dokumentu naredili več škode kot koristi, zato je najbolje, da v celi datoteki uporabljamo en sam način.
    Jezik HTML5 razlikuje med malimi in velikimi črkami, zato moramo imena oznak, imena njihovih lastnosti in predpisane vrednosti pisati točno tako, kot so definirane. To pomeni, da moramo vse pisati z malimi črkami.