pondělí 13. srpna 2007

Odlišná pravidla pro HTML z WYSIWYG editorů?

Nejednu debatu vyvolal fakt, že HTML5 specifikace na některých místech obsahuje odlišná pravidla pro ručně psané HTML a pro HTML výstupy WYSIWYG editorů.

Takovým příkladem je značka <font>, která není v HTML5 povolena (předpokládám, že čtenářům není třeba vysvětlovat detailně proč), ovšem s jednou výjimkou. Tou výjimkou je výstup WYSIWYG editoru.

Ve specifikaci stojí:
The font element doesn't represent anything. It must not be used except by WYSIWYG editors, which may use it to achieve presentational affects. Even WYSIWYG editors, however, should make every effort to use appropriate semantic markup and avoid the use of media-specific presentational markup.
Asi každý se nad tím pozastaví a přemýšlí, zda tato výjimka je či není vhodná. Ian Hickson se tomu na jaře vyjádřil ve svém rozhovoru:
Hlavní důvod, proč by WYSIWYG editory měly dostat výjimku, je, že dnešní uživatelská rozhraní neznají dobré řešení sémantických editorů pro obyčejné uživatele. Mohli bychom to po editorech požadovat, ale protože nikdo neví, jak to udělat, byl by to hloupý požadavek. Opět musíme udělat kompromis mezi dokonalostí, potřebami a omezeními reálného světa.
Vysvětlení zřejmě všechny neuspokojilo a debaty pokračují. Minulý týden se problematiku pokusil vysvětlit člen HTML WG s přezdívkou Smylers, který mimo jiné píše:
* We want that an author of a valid HTML5 document isn't permitted to use certain 'presentational' things, instead putting semantic mark-up in the HTML and using CSS to achieve the desired presentation.

* Some HTML is generated not by users directly, but by applications, such as word processors with a 'save as HTML' option. Some of those applications permit users to specify presentational output without giving a reason for doing so (for example, a user may consistently highlight all defining instances of terms in blue, or use a different typeface for headings, but there's no way the application is aware of this).

So when generating the HTML the application cannot follow the rules for authors writing HTML by hand; if the user has only told the application to make something blue, all the app can do is generate HTML which specifies its blueness.

So _some_ HTML-generating software can't meet all the author requirements.

* That software isn't going to go away. Whatever this group decides, such apps will still be used.
Pokud vás problematika zajímá více, přečtěte si celé vlákno počínající Mihaiovým mailem (v tuto chvíli čítá necelých 30 příspěvků).

Nejedná se o jediný bod HTML5 specifikace, který vyvolává řadu diskusí. Např. Molly E. Holzschlag (stejná dáma, která nedávno volala po zastavení inovací webu) vyvolala o víkendu lehce ostrou debatu právě na téma událostí okolo současného vývoje.

Na to reagoval Tantek Çelik:
Standards organizations, and w3c is no exception, often designed things "a priori", depending on the opinion of "experts" to just "pick the right thing" a priori, based on their expertise.

The approach that microformats (and apparently WHATWG) is taking with scientifically challenging features and demanding justification through research/evidence is quite new and quite threatening to those that are used to simply getting their way because they say so as in, how dare anyone question their expertise?
Myslím, že Tantek na to trochu kápnul. Web má za sebou už velkou historii, ze které se může poučit a přestává se vyvíjet způsobem "já bych to navrhl takhle, někdo se mnou nesouhlasí?", ale spíše "musíme to navrhnout tak, aby se vyřešil problém X, jinak to bude špatně". A to někdy může vést i k porušení dosavadních tabu.

4 komentáře:

  1. Nedávno jsem měl tu možnost navštívit přednášku Molly. Její odborné znalosti mi nepřišly moc veliké. Ať raději po ničem nevolá :)

    OdpovědětVymazat
  2. Já tedy Molly osobně neznám, ale ze všeho co jsem o ní slyšel si jí vážím. Ona má pohled těch evangelistů, co vidí hlavně "Učit se. Učit se. Učit se." což vychází z toho co a koho učí (pokud vím, tak převážně "začátečníky"). Když její kurzy jednou navštíví někdo zkušenější, musí mu připadat trochu omezená, ale IMHO to je subjektivní dojem.

    Na v souvislosti s tématem Molly jsem včera napsal Jak vyřešit problémy webu?, ale protože se situace vyvíjí a Molly měla dnes v noci zajímavou debatu s Hixiem tak bych rád (snad ještě dnes) napsal další příspěvek a trochu to objasnil.

    OdpovědětVymazat
  3. Asi mi neco unika... co brani WYSIWYG editorum misto tagu font dat text treba do spanu s atributem style nebo vlozit do stranky primo styly pro vse potrebne?

    OdpovědětVymazat
  4. Ono použití font nebo inline stylů je z technického hlediska defacto jen jiný zápis téhož (ani některý se nám může líbít víc, ale je to totéž jen v jiném kabátu). Vize samozřejmě je zbavit se obojího, rozdíl mezi "zbavit se starých fontů a přejít na inline styleshteety, kterých se za chvíli taky budeme chtít zbavit - inline style není moc strict" a "počkáme až najdeme cestu jak problém vyřešit jednou pro vždy" není zas tak velký.

    Tím nenaznačuji, že se jednoznačně kloním k jedné ze zmíněných stran, prostě mezi nimi nevidí výrazný rozdíl, obojí je pokus na řešení problému, obojí je z pohledu sémantiky nevhodné.

    Pokud jsi schopen udělat nějakou analýzu problému a možností řešení, ze které by vyplynuly všechny výhody a nevýhody, a které by umožnila nakonec zvolit nejlepší řešení, jdi do toho (napřed si prosím ještě přečti Tantekův komentář). Myslím, že budeš první a třeba se zapíšeš do dějin HTML 8-), zatím jsem v HTMLWG žádnou takovou studii nezahlédl.

    Předpokládám, že oba chápeme stejně, že zmíněná část specifikace je draft, který má za úkol říct "zde je problém a je třeba ho nějak řešit" a zmíněné řešení je jen prozatimní možný náčrt a zatím jen nikdo nenabídl lepší (otázka je proč a také zda někdo někdy takové nabídne).

    OdpovědětVymazat

Poznámka: Komentáře mohou přidávat pouze členové tohoto blogu.