Autor Zpráva
Anonymní
Profil *
Někde jsem četl, že moc <div>ů nedělá dobrotu. Co je na tom pravdy? Jaký problém mohou způsobovat? Jak chytře nahradit <div>y?
Timy
Profil
Anonymní
"Jaký problém mohou způsobovat?"
Vůbec žádné, pokud je jinak obsah správně vyznačen. Spíš jde o "čistotu" a "krásu" kódu.
Anonymní
Profil *
Četl jsem článek, ve kterém jsou <div>y kritizované ze všech stran. Takže jestliže nezpůsobují problémy a jen z hlediska "krásy" kódu, proč jsou tak kritizované?
Timy
Profil
Anonymní
Jaký článek?
Anonymní
Profil *
Je to déle co jsem jej četl, pokusím se ho najít. Nebylo to ovšem zde.
Zahon
Profil
No, určitě mě všichni seřvou a řeknou že to říkám špatně a tak. Ale stejně to řeknu. V podstatě kaskádové styly a hlavně XHTML vznikly kvůli oddělení struktury dokumetnu od grafiky. Ovšem div je ve svě podstatě převážně grafický prvek. No a když jich tam máme moc, vracíme se v podstatě do stádia kdy se struktura od grafiky neoddělovala... Tak asi tak si to vysvětluju já. prosím, jestli jsem to řekl blbě, neřvěte na mě.
Bubák
Profil
Anonymní
Přečti si:
http://www.semantika.name/

K tématu dotazu má nejblíž kapitola:
http://www.semantika.name/fekalni-styl.html
RPG
Profil
Zahon
Grafický...? Vždyť je to oddíl. Sémanticky bezvýznymný kus zdrojového kódu. Graficky se nijak nezobrazí, pokud ho neostyluješ.
Anonymní
Profil *
Takže tedy. Jak se vyhnout <div>ům, abych to neměl "pře<div>ované"? Je o tom někde na internetu nějaký článek? Rady ap.?
RPG
Profil
Anonymní
Jak se vyhnout <div>ům, abych to neměl "pře<div>ované"?
http://semantika.name
Podívej se do zdrojového kódu.
Zahon
Profil
RPG
A k čemu slouží u většiny dnešních webů? Ano správně, k udělání grafiky, layoutu atd. Já vím že sémanticky je to jinak. Také tam mám slovíčko "v podstatě" ;-)
Timy
Profil
Anonymní
"Takže tedy. Jak se vyhnout <div>ům, abych to neměl "pře<div>ované"?"
Použij tolik divů, kolik bude potřeba. Nemá smysl se hodinu dřít s CSS, abys měl o div míň, fakt to za to nestojí, opravdu mi věř, víc co mluvím :-)

A kdybys přeci jen našel ten článek, byl bych ti vděčný, rád bych si ho přečetl.
RPG
Profil
Ano správně, k udělání grafiky, layoutu atd.
Ne, k tomu slouží CSS. <div> je v tomhle případě pouze prostředníkem.
Takže, vize byla naplněna - struktura byla oddělena od grafiky. I když ne zrovna sémanticky čistým postupem.
Timy
Profil
Ještě k tématu: http://blog.filosof.biz/divy-a-spany/
habendorf
Profil
Pamatuju se, že Plaváček jednou tvrdil, že někde kolem 2.500 (?) divů mu začal klekat IE. Nevím, možná si dělal legraci :o)
MZF
Profil
habendorf

To by stálo za vyzkoušení. Jestli má někdo týden volna, ať se do toho pustí! :)

Jinak je lepší mít v kódu co nejméně divů, ale zase by se to nemělo hnát do extrému. Bez divů bude práce o hodně pracnější a časově si myslím, že se to oproti pár vhodně zasazených divů nevyplatí.
habendorf
Profil
MZF: To vygeneruješ skriptem :o)
Joker
Profil
MZF
Proč týden volna, za deset minut to musí zvládnout snad každý, kdo má v textovém editoru funkce copy-paste, a za minutu každý, kdo umí napsat for($i=0;$i<3000;$i++) echo('<div>bla</div> '); :-)

K tématu:
<div> a <span> nejsou grafické prvky, prostě označují kus textu.
Jestli mám na stránce deset, dvacet, padesát, sto, dvěstě, třista... takových prvků, nevidím na tom nic špatného, pokud jsou potřeba. Problém je někde jinde- pokud se prvky <div> používají namísto jiných prvků, které by tam správně měly být. HTML kód má vyjadřovat obsah, nikoliv formu. Pokud vezmu svůj starý kód a všechny značky <font> nahradím <span> tak ten kód nebude o nic lepší, než byl předtím.

Příklad:
špatně

<div class="nadpis">K tématu</div>
<div class="nadpis2">prvky DIV a SPAN</div>
<div class="text"><span style="font-weight: bold">DIV a SPAN</span> nejsou grafické prvky, prostě označují kus textu. Jestli mám na stránce deset, dvacet, padesát...
</div>


Správně:

<h1 class="nadpis">K tématu</h1>
<h2>prvky DIV a SPAN</h2>
<p class="text"><strong>DIV a SPAN</strong> nejsou grafické prvky, prostě označují kus textu. Jestli mám na stránce deset, dvacet, padesát...
</p>
Blekota
Profil *
A co když mám:

<div id="vsechno">
<div id="hlavicka">
<p>......</p>
</div>
<div id="levastrana">
<menu>
<li>....</li>
<li>....</li>
</menu>
</div>
<div id="pravastrana">
<p>...........</p>
<p>......................</p><img src...........>
</div>
</div>

Dají se nějak nahradit tyto <div>y? Nebo je to v pořádku? Či prasácká práce?
Timy
Profil
Blekota
"Dají se nějak nahradit tyto <div>y? Nebo je to v pořádku?"
Dají i nedají.... Podle grafiky... Obecně se dá říct, že je to naprosto v pořádku.

Lidi neblázněte, ty divy fakt ničemu neuškodí.
tiso
Profil
Blekota Niečo áno, niečo nie...

Ide o to že použitie niektorých divov zjednodušuje prácu. Radšej dám jeden div na vycentrovanie layoutu ako by som mal centrovať 4x jednotlivé časti - hlavičku, menu, obsah a pätičku... Proste až takto striktne by som to nebral...
Joker
Profil
Blekota
U mě dobrý :-)
Jinak samozřejmě se nahradit dají, vpodstatě jakýmkoliv prvkem, když na to přijde ;-)

Ne, já myslím, že tohle je oprávněné použití.
Já bych to řekl takhle: DIV bych použil pro obsah, který dohromady tvoří nějaký celek (blok), ale nehodí se pro něj jiný HTML prvek.

Takže pokud potřebujete na stránce třeba něco jako "pravý sloupcec", je myslím <div> nejvhodnější prvek.
A obecně bych se <div>ů nebál, spíš jde o to, aby <div> a <span> nebyly jediné prvky, které na webu používáte. Používejte nadpisy, odstavce, zvýraznění atd. a když žádný z prvků nebude vystihovat to co chcete, použijte <div> (resp. <span>)
JPAS
Profil
Já bych se divů nebál :-)

Pokud je potřebuješ použij je, nevydím v tom ani výraznou sémantickou chybu (když vezmu, že mi to označuje určitý blok obsahu, tak je to v pořádku). Divy nikomu nevadí.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0