Strukturalne elementy HTML5

Strukturalne elementy HTML5

22. 12. 2013

Semanticke elementy popisuju vyznam, zatial co <div> ani po pridani id, nehovori nic o jeho obsahu.

HTML5 prinasa strukturalne semanticke elementy:

  • article
  • aside
  • footer
  • header
  • hgroup
  • main
  • nav
  • section

main

Predstavuje hlavny obsah, ktory je unikatny, neobsahuje opakujuci sa obsah, ako postranne panely, navigacne odkazy, copyright, logo a vyhladavaci formular. Musi byt len jeden a nesmie byt potomkom article, header, footer alebo nav.

<main>
    <h1>...</h1>
    <p>...</p>

    <article>
        ...
    </article>

    <article>
        ...
    </article>
</main>

header a footer

Jednotlive sekcie a clanky mozu mat svoje hlavicky a paticky. Zmysel tychto elementov su napriklad meta informacie alebo odkazy relevantne k sekcii.

Priklad hlavicky a paticky v article elemente:

<article>
    <header>
        <h1>...</h1>
    </header>

    <p>...</p>
    <p>...</p>

    <footer>
        <p>Publikovane: <time datetime="...">...</time></p>
    </footer>
</article>

Priklad paticky stranky s navigaciou:

<footer>
    <nav>
        ...
    </nav>

    <p>Copyright ©2013 ...</p>
</footer>

hgroup

Element sluzi na zoskupenie nadpisov v pripade, ze nadpis tvori viacero urovni, ako podnadpis alebo alternativny nadpis.

<header>
    <hgroup>
        <h1>...</h1>
        <h2>...</h2>
    </hgroup>
</header>

article

Moze to byt prispevok, clanok, komentar uzivatela, widget alebo gadget, alebo iny nezavysly prvok obsahu.

<article>
    <h2>...</h2>
    <p>...</p>
</article>

section

Predstavuje vseobecnu cast dokumentu, tematicke zoskupenie obsahu, zvycajne s nadpisom.

<section>
    <h1>...</h1>
    <p>...</p>
</section>

aside

Cast stranky, ktora sa sklada z obsahu suvisiacim s obsahom okolo neho. Casto obsahuje dodatocne vysvetlivky alebo menej suvisiaci obsah, ako reklamy a bio autora.

<aside>
    <p>Obsah suvisiaci s clankom</p>
</aside>

nav

Reprezentuje cast stranky, ktora obsahuje odkazy na ine stranky alebo casti stranky.

<nav>
    <ul>
        <li><a href="#">...</a></li>
        <li><a href="#">...</a></li>
        <li><a href="#">...</a></li>
    </ul>
</nav>

Kedy pouzivat div

Kedy teda pouzit stare dobre <div>? Vtedy, ked nieje lepsi element pre danu situaciu.

Internet Explorer a HTML5

Internet Explorer 9 a starsi nepozna tieto nove elementy, ktore zaviedol HTML5. Pomocou HTML5 shiv mozeme vyriesit problem nasledovne:

<!--[if lt IE 9]>
    <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
comments powered by Disqus