В последния си пост Джонатан Кристофър поставя един проблем, който стои пред всеки уеб разработчик – дали да се вглъбим във валидността на кода, или да поставим на преден план добрата структура и семантика на HTML? В статията има доста връзки към други подобни публикации, които ни разкриват истинската същност на проблема: стремежът към спазване на уеб стандартите без тяхното познаване води някои разработчици до преекспониране на нещата и неправилно използване различни HTML елементи. Майк Черим поставя въпроса ребром – Не са ли списъците новите таблици? Друг често срещан модел е divitis – предобряне с div елементи.
Признавам, че често в стремежа да си свърша работата бързо и да оставя дизайнера и клиента доволни, и аз използвам повече елементи отколкото изисква структурата на информацията. Но въпреки това продължавам да си задавам въпроса трябва ли да затворя този блок в div, дали да използвам списък или няколко div елемента?
В тази връзка откакто чопля WordPress се чудя дали структурата на страничната лента не използва прекомерно списъци? Със сигурност архивът, последните коментари или публикации са си списъци, но не са ли подредени? Категорийте и страниците са определено неподредени списъци, но дали подредбата им като блокове също е списък? Предполакам, че всяка теза ще има своите защитници, евентуално доста убедени, но все пак ми е интересно да чуя мнения, ако някой прочете това.
Етикети: HTML, wordpress, уеб стандарти
Проблемът е, че в HTML има недостък на смислени структурни блокови семантични елементи. Единствените такива са h1-h6, ul/ol и p. Останалите семантични тагове са или inline, или са строго специфични (като blockquote) и не са универсално приложими.
Аз самият съм изпадал в положение, в което съм се предавал и съм лепвал просто поредния div, понеже не се сещам какво друго да използвам. Това е типична ситуация при по-сложни layouts. При този недостик е съвсем нормално един професионалист, за който уеб стандартите не са маловажни, да се стреми да използва повече списъци. Разбира се е трудно да се определи кое е списък и кое не. Някой би видял в нормален триколонен layout списък от три плаващи елемента. Друг би видял един милион вложени таблици. Трети просто би разделил колоните (разделяне = division = div). Наистина, няма универсална формула.
Разбира се, не е нужно да се избира между валидността на кода и семантиката. За един професионалист валидният код е просто метод за презастраховане от неочаквани грешки, а използвайки Firefox и някой от подходящите addons, те изпъкват веднага.
Ами да, прав си, че липсват достатъчно семантични елементи (което ще се промени н HTML5), и точно това е предизвикателството. Накоро се задълбах в разни писания относно dl dt dd елементите, и там също има разнообразни тълкувания на смисъла и съответно приложението.
Проблемът в някои случаи е сериозен, виждал съм няколко вложени div-а с класове, задаващи по едно свойство. Това е едно от нещата, които трябва да избягваме. Но по-интересното за мен е до къде се простира правилната употреба на списъци (ol, ul, dl). Не съм сигурен, че колоните в оформлението на страницата са списък, по-скоро си ги представям като секции със подходящи идентификатори (<div id=“sidebar“>)