Autor Zpráva
Dpetr
Profil *
Zdravím, mam dotaz nebo spíše žádost o radu.

Zkouším si napsat web v html5 a přemýšlím co je lepší.

Měnit obsah pomoci složky url a php zapisu v časti webu

A nebo......

V knize o html 5 zapisuji vše do jednoho kodu index.html a obsah mění pomocí ajaxu a JQuery

Nemá někdo zkušenosti co je modernější, kompatibilnější a nebo cokoliv jiného.

Děkuju za radu

Moderátor Petr ZZZ: Původní titulek: „Změna a obsahu v HTML5“
mimochodec
Profil
Dpetr:
V knize o html 5 zapisuji vše do jednoho kodu index.html a obsah mění pomocí ajaxu a JQuery

Tudy cesta nevede. Projdi si Skládání stránek z kousků
Dpetr
Profil *
Pro lepší názornost vice popíšu

Varianta 1. (Používám již strašně dlouho)

Pro změnu obsahu ve webu vytvořím slozku url a do ni dím jednotlivé stránky

a v index.php nebo index.html zvolim tento zápis

<?php

    $page=$_GET["page"];
    $dir="url/";
    $uvodni="uvod.php";
   if ($page) {
    if (file_exists($dir.$page.".php"))
        include($dir.$page.".php");
        else { include $dir."404.php"; 
}
    }

    else {                            
    include  ($dir.$uvodni);
   }
?>


Ve variantě 2 HTML5 (coz je nová technologie to delaji takto)

Nabyl jsem dojmu že v html5 to určitě maji nějak moderně vychytané ale když na to koukám zdá se mi, že při složitějším webu to musí být strašně nepřehledné a ja bych chtěl psat web moderní technologii ale správně a hlavně nechci používat flash.

Takže ten html5 kod

<!DOCTYPE html>

<html lang="cs-CZ">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>html5 test</title>
    <link rel="stylesheet" href="styly.css" type="text/css">
    
    <script type="text/javascript" 
       charset="utf-8"
       src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js">
    </script>
    
    <script type="text/javascript" 
       charset="utf-8"
       src="javascript/aplikace.js">
    </script>
  </head>
  <body>
    <header id="zahlavi"> 
      <h1>html5 test</h1>
      <nav>
        <ul>
         <li><a href="#uvitani">Uvítání</a></li>
         <li><a href="#sluzby">Služby</a></li>
         <li><a href="#kontakt">Kontakt</a></li>
         <li><a href="#onas">O nás</a></li>
        </ul>
      </nav>
    </header>
    <section id="obsah"
             role="document" aria-live="assertive" aria-atomic="true">
      
      <section id="uvitani">
        <header>
          <h2>Uvítání</h2>
        </header>
        <p>Uvítací část</p>
      </section>

      <section id="sluzby">
        <header>
          <h2>Služby</h2>
        </header>
        <p>Část se službami</p>
      </section>
    
      <section id="kontakt">
        <header>
          <h2>Kontakt</h2>
        </header>
        <p>Část s kontakními informacemi</p>
      </section>
    
      <section id="onas">
        <header>
          <h2>O nás</h2>
        </header>
        <p>Část s informacemi o nás</p>
      </section>

    </section>
    <footer id="zapati">
      <p>&copy; 2011 AwesomeCo.</p>
      <nav>
        <ul>   
         <li><a href="http://awesomeco.cz/">Úvod</a></li>
         <li><a href="onas">O nás</a></li>
         <li><a href="podminky.html">Obchodní podmínky</a></li>
         <li><a href="soukromi.html">Soukromí</a></li>
        </ul>
      </nav>
    </footer> 

</body>
</html>


Je lepší tato varianta nebo jiná?
iframe a podobné věci myslím, že jsou zastaralé to nepoužívám léta
margin
Profil *
AJAX je vhodný jen ve zvláštních případech, hezkým příkladem jsou třeba mapové aplikace nebo hlasování/ankety na stránce, kdy se výsledek zobrazí bez reloadu celé stránky.


Ještě dodám, používání elementů z HTML5 ti nic nepřinese, krom nutnosti používat skript pro IE7/8, která ti umožní takové elementy nastylovat.
mimochodec
Profil
Dpetr:
Je lepší tato varianta nebo jiná?

Je lepší varianta 1. Tzn. jeden index.php, do kterého includuješ soubory podle zvolené stránky.
jenikkozak
Profil
Dpetr:
iframe a podobné věci myslím, že jsou zastaralé to nepoužívám léta
Proč bys nemohl používat zastaralý iframe, když používáš zastaralé seznamy <ul> a zastaralé odstavce <p>?
Určitě jsou ty tvé supermoderní prvky natolik úchvatné, že dokážou vyvážit fakt, že je nelze ve starších IE nastylovat?
Str4wberry
Profil
Já tedy na variantě 2 z příspěvku [#3] (kromě používání některým prohlížečům neznámých značek) nevidím nic špatného. Dokonce mi to přijde lepší než <iframe>.
joe
Profil
Záleží o jaké stránky jde. Varianta dvě se hodí na jednoduché stránky, třeba i na osobní portfolio, kde se dají prolínat mezi stránkama různé efekty a není to tak fádní jako klasické zobrazení stránky po kliku na odkaz.

Nejde tedy říct, že první nebo druhá varianta je lepší.
mimochodec
Profil
Str4wberry:

Variantu 2 si můžeš dovolit na nějaké microsite. Při složitějším nebo prostě rozsáhlejším webu se ti to bude jednak hůř spravovat a za druhé by mi vadilo, že se bude stahovat cca n-krát (n=počet stránek webu) víc obsahu, než se zobrazí.
Str4wberry
Profil
Ano, v případě webu s desítkami obsáhlých stránek začíná být varianta 2 problematická. Ale pro jednoduchý web naopak snižuje objem dat a požadavků společných zbytečně stahovaných dat.
Dpetr
Profil *
Moc děkuji za vaše příspěvky.
Co jsem si s toho vzal?
Ze na malý web, je html5 vhodné (podle toho co jsem o něm zatím zjistil)

Ale na weby složitější mi html5 téměř nic nemění mimo toho ze místo <div id="neco"></div> mohu používat nové sémantické značky html5 a k to mu ještě pár jiných "moderních" prvků html5 které povedou k jednoduššímu zápisu ale stejnému výsledku.
a co se týká obsahu webu je ve finále starší způsob přes include lepší

Ještě jednou Díky všem a budu to tu i na nadále sledovat kdyby přibyli nějake zajímavé názory a rady
Chamurappi
Profil
Reaguji na Dpetra:
Myslím, že máš zmatek v pojmech. HTML 5 nepřináší žádný nový způsob změny obsahu. To, o čem píšeš, je AJAX a ten nijak s verzí HTML nesouvisí. Pokud ti knížka tvrdí něco jiného, použij ji k něčemu jinému než ke čtení (třeba k podložení monitoru).

html5 téměř nic nemění mimo toho ze místo <div id="neco"></div> mohu používat nové sémantické značky
Ty jsi mohl používat klidně i před deseti lety, v podstatě se stejným výsledkem jako teď. Viz můj článek.

je ve finále starší způsob přes include lepší
On není o moc starší. AJAX vznikl přibližně ve stejné době, jako se přestaly používat rámy, není to žádná novinka.

a ja bych chtěl psat web moderní technologii
Proč? Aby hůř fungoval? :-)
Dpetr
Profil *
Pěkný článek čím vic html5 zkouším začínám mít podobný názor. Neříkám, že ho mám ale v drobnostech už začínám. Je fakt že jsem se vlastnímu testu html5 pořád vyhýbal ale po nátlaku okolí proč v něm ještě nedělám ho tento týden zkouším. Neříkám že se mi nelíbí jen jsem si od toho sliboval více (možná). Ruzné věci se mi na html5 líbí ale některé věci by se dali vyřešit . Vím že jde o znaškovací jazyk a né programovací a tak od toho nemůžu zase chtít aby to řešilo vše.

Pořád všichni píšou že html5 neumí číst prohlížeče (možná se pletu - ale co tak čtu neumí to pouze IE v různých verzích - toto však řeší vcelku jednoduché varianty nouzových řešení, vždyť i v normálních webech dnes a denně plácáme různé způsoby aby jsme dosáhly výsledku který na webové aplikaci chceme mit) snad jsem s ve současné pocity vyjádřil tak nějak srozumitelně

To o tom novem způsobu psaní webu jsem napsal vidím okolo sebe samé flasch weby html5 weby a nabyl jsem pocitu že jsem zastaralý protože to opravdu dělám už léta stejně. No aspoň zkouším a hledám a snažím se informovat to myslím taky neni úplně na škodu.
Ale diky za tvůj post Chamurappi
Petr ZZZ
Profil
Dpetr:
Na to, abys mohl svému tlačícímu okolí říct, že píšeš v HTML 5, stačí napsat <!DOCTYPE html>. Kvůli tomu nemusíš nutně používat elementy s problematickou podporou.
jenikkozak
Profil
Petr ZZZ:
Na to, abys mohl svému tlačícímu okolí říct, že píšeš v HTML 5, stačí napsat <!DOCTYPE html>.
Abys mu to řekl, bylo by potřeba přidat tento kód:
<!DOCTYPE html>
<!--Píšu v HTML pět!-->
V tom tvém zápisu není číslo verze uvedeno. Nikdo tedy nepozná, jestli jde o připravovanou verzi 5, nebo vysněnou verzi 8.
Petr ZZZ
Profil
jenikkozak:
Číslo verze uvedeno není, ten zápis ale odpovídá doporučení W3C v rámci HTML 5; cituji:

The HTML5 DOCTYPE declaration.
<!DOCTYPE html>

Je ovšem pravda, že vynechání čísla je zvláštní. Třeba to je součást strategie PR a metoda linkbaitingu ze strany konsorcia – kdoví, čeho se ještě dočkáme, než bude specifikace HTML 5 formálně dokončena. Je vidět, že vynechání čísla je zdrojem nejasností a přispívá k tomu, že se o konsorciu mluví. :-)
Davex
Profil
Petr ZZZ:
<!DOCTYPE html> slouží pouze k přepnutí prohlížeče do standardního vykreslovacího režimu. Neříká nic o verzi HTML a zpracování v prohlížeči se nijak nezmění (pokud nepočítám drobné rozdíly mezi standardními režimy). Klidně můžeš mít doctype HTML 4.01 a značky z HTML 5 budou fungovat také.
margin
Profil *
Petr ZZZ:
Z doctype bylo číslo verze odstraněno ještě dříve, než se HTML 5 dostalo do spárů konsorcia.

Davex:
Klidně můžeš mít doctype HTML 4.01 a značky z HTML 5 budou fungovat také.
Jen to ne, Validátor bude zmaten a bude plivat síru hlášky ;-)
Kdo nepochopil, tak na konci je smajlík.
Petr ZZZ
Profil
margin, Davex:
Díky za korekturu, která zřejmě podporuje domněnku, že i konsorciu občas ujede zavádějící formulace. Ta, kterou zde mám na mysli, by tedy – pokud moje znalost angličtiny stačí – neměla asi znít
The HTML5 DOCTYPE declaration. <!DOCTYPE html>, nýbrž
Available HTML5 DOCTYPE declaration: <!DOCTYPE html>.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: