Uppbyggingarmyndir HTML - grein, hluti, hníf og til hliðar - eru við fyrstu sýn nokkrar af auðveldustu hlutum HTML5 forskriftarinnar til að skilja og framkvæma. Hins vegar eru þau í raun sumir af the illa tilgreind, illa skilið, og illa framkvæmdir hlutar HTML5.

Búið til geðþótta; Þeir reyna að kynna nýja leið til að skipuleggja vefsíður; Þeir brjóta í bága við eigin hönnunarreglur HTML. Þeir skaða aðgengi fyrir suma notendur; og þú ættir ekki að nota þau.

Já, ég er að koma út byssur-logandi gegn þessum tilteknu hluta HTML5, en vinsamlegast ekki ráð fyrir að ég sé 'andstæðingur-HTML5'. Ég hef skrifað bók um HTML5 , Ég elska opinn vefinn, ég elska góða vefur staðla, og ég elska þá staðreynd að eftir að hafa unnið í gegnum áratug stöðnun, er nýsköpun í vefur tækni nú að gerast á algerlega þynnandi hraða. Það þýðir hins vegar ekki að við þurfum að samþykkja allt sem við erum gefið. Við þurfum ekki að borða allt á HTML5 plötunni, jafnvel þó að við finnum hluti af fatinu frekar bragðgóður örugglega. Sumir hlutir þurfa líklega að vera sendur aftur til kokkur.

Það eru góðar og slæmar hlutar við nokkuð gríðarlega HTML5 forskriftina og við ætlum að hugsa gagnrýninn um einn mjög sérstakan hluta af forskriftinni: sneiðin eða "uppbygging" þættirnir HTML5 kynnir. Svo skulum við setja einkaspæjara okkar og skoða hvar þessi nýju þættir komu virkilega frá, hvernig þeir eiga að nota og hvernig við, vefhönnunarsamfélagið, hafa í grundvallaratriðum misskilið þær, í grundvallaratriðum forking sérstakri. Við munum spyrja grundvöll þessara þátta og brjótast nokkrar goðsögn um þau á leiðinni.

Hvar komu byggingareiningar HTML5 frá?

Skulum brjótast við einn goðsögn sem hefur verið endurtekin ad nauseum um þessi atriði: hugmyndin að þau byggist á rannsóknum á því hvernig við, veffélagið, merktu skjölin okkar. Það er goðsögn sem hefur verið endurtekið í bækur, bloggum og viðræðum í mörg ár núna, og það er bara ekki satt. Hvernig veit ég? Ég spurði.

Þegar ég var að rannsaka uppruna þessara þátta ákvað ég að spyrja ritstjóra HTML5 forskriftarinnar, Ian Hickson, þar sem þessi þætti komu frá. Hann svaraði:

Ég og aðrir WHATWG þátttakendur [bætti þeim], [á] 2004ish, vegna þess að þeir voru augljósir þættir að bæta við eftir að hafa séð hvernig höfundar notuðu HTML4. Við seinna (seint 2005 snemma árs 2006) gerðu nokkrar hlutlægar rannsóknir til að finna út hvaða tíu HTML flokkar voru og það kom í ljós að þeir voru nákvæmlega í samræmi við þá þætti sem við höfðum bætt við, sem var þægilegt.

Við skulum brjóta þetta niður: Í fyrsta lagi, Hickson og WHATWG meðlimir bættu þessum þætti áður en rannsóknir voru gerðar . Þú getur kafa inn í WHATWG (þakkarlega opinbera) póstlista skjalasafn og uppgötva snemma umræður um þessi þætti fyrir sjálfan þig. Til dæmis geturðu séð Hickson ræða þau í nóvember 2004 með athugasemdum eins og þessi :

Já, ég ætla að innihalda efni eins og [merkingartækni] í vefforritum. Whiteboard á skrifstofu mínu hefur nú lista yfir þætti undir fyrirsögninni "HTML5 BLOCK LEVEL ELEMENTS" og ég er að reyna að finna út hvernig á að gera þau virka vel (þættirnir sem um ræðir eru nú nefndir í drögunum en drögin tekur ekki til höfuðs yfirleitt vel). Ég hef ekki horft á inline markup ennþá, en það er líka á spilunum.

Það virðist, hvernig HTML5 skipulagsheilbrigði kom til: einn maður, einn whiteboard og nokkur inntak frá öðrum WHATWG meðlimum. (WHATWG, eða Web Hypertext Umsókn Tækni Working Group, var stofnað af fulltrúum vafra sem svar við W3C yfirgefa HTML fyrir utopian hugsjón XHTML 2.0).

Þættirnir sem notaðar eru af milljónum skjala sem við höfum verið að ræða og rætt um, virtust búið til geðþótta á hegðun HTML5 ritstjóra árið 2004. (Og hittumst með stórt gagnrýni og nokkrar dapurlegar spár næstum strax.)

Sameiginleg hugsun

Tantek hefur krafist þess að rannsóknir - áður en tilgreindar nýjar snið í langan tíma séu í samhengi microformats, og að lokum verða WHATWG forskriftirnar á sama hátt hönnuð með raunverulegum gögnum, í stað þess að draga úr efni úr sameiginlegum hugsunum okkar. - Ian Hickson

Það færir okkur annað stig. Í desember 2005-ár eða svo eftir að þessi nýju þættir komu upp - Hickson (starfsmaður Google) gerði nokkrar rannsóknir á því hvernig skjöl voru höfundar með miklum skjalagagnagrunni Google. Rannsóknin var "greining á sýni sem er aðeins rúmlega milljarð skjöl, útdráttar upplýsingar um vinsælan heiti nafna, þætti, eiginleika og tengda lýsigögn." Auðkenni voru ekki með í rannsókninni. Niðurstöðurnar voru birtar af Google sem Tölvuvefur (2005) .

Mikilvægur hluti rannsókna, hvað varðar áhrifaþætti HTML, var flokka niðurstöður , sem þrátt fyrir að nota sýnishorn þar sem ~ 900 milljónir af 1 milljarða skjölunum greinilega hafði enga flokka yfirleitt, innihéldu nokkrar algengar flokkar. Ég er viss um að við höfum öll notið í verkefnum okkar áður en: fótur, valmynd, titill, lítil texti , efni, haus, höfn, höfundarréttur, hnappur, aðal og svo framvegis.

Hickson veitir síðan snúning sinn á gögnunum og bendir til þess að þessi flokkar séu "mjög vel" að þeim þáttum sem eru settar fram í HTML5 "og veitir töflu sem samanstendur af niðurstöðum rannsókna og nýju þættirnar í HTML5: fót bekknum er í rannsókninni, fætiþáttur er í HTML5; Hópur flokkur er í rannsóknum, haus þáttur er í HTML5; flokkar texta , innihald , megin , líkami eru í rannsókninni, og err ... greinin er í HTML5 sem, eins og við munum sjá, passar ekki alls; kafla er ekki að finna á öllum, sem einnig er athyglisvert.

Taka á nafnvirði, þetta er allt sanngjarnt nóg. Ég nota fót, þú notar fót, fót er í HTML5. Hvað er vandamálið?

Vandamálið er, ef þú lest raunverulega HTML5 forskrift , eru þættirnir í HTML5 skilgreindar á þann hátt sem hefur lítið að gera við hvernig við notum hefðbundinna þátta.

Annars vegar hefur Hickson kynnt nýtt hugtak um að setja upp vefsíðu í HTML5 með hlutdeildarþætti . Á hinn bóginn er Hickson að bera saman HTML5 hlutdeildarþætti hans í flokka sem notaðar eru í náttúrunni án skilnings á því hvaða flokkar voru í raun notaðir. Klassískt dæmi er 'haus', sem flestir myndu nota fyrir svæðið efst á síðunni, en HTML5 forskotið gefur til kynna að þú getir notað það fyrir haus allra athugasemda á síðu . Í alvöru. Bara vegna þess að flokkar í rannsóknum og þættir í HTML5 hafa sama nafn þýðir ekki að notkun þeirra sé sú sama.

Nú, ef það var tilkynnt greinilega að nýjar þættir voru kynntar með nýjum tilgangi og skýr rök, þá myndi það ekki vera svo slæmt. En það er ekki það sem við höfum verið sagt.

Hér er Hickson árið 2009 , svara spurningu um tilgang hluta, nav, grein, til hliðar og annarra:

Þeir eru meira eða minna að fylla algengustu beiðnirnar frá vefhönnuðum byggðar á því sem algengustu tegundir eigindaskilyrða eru. Megintilgangur þeirra er að einfalda höfundar og stíl.

Því miður virðist þetta vera tilfelli þar sem HTML5 ritstjóri, fyrir allt gott verk hans í að draga spec saman, hefur (við skulum vera örlátur) gleymt af hverju hann bætti þessum þáttum við það sem er í raun sérstakur hans. Kannski er tíminn munur á milli 2009 og 2004, hver veit. En við vitum þetta: HTML5 sneiðin voru ekki bætt við til að fylla út "algengustu beiðnir frá vefhönnuðum" yfirleitt. Hvernig vitum við? Við getum bara skoðað listann og séð helstu grundvallarþættina sem bætt er við, svo sem hlutdeildarþátturinn (og tengdar hlutar og hliðarþættir), birtast ekki í sameiginlegum flokki eiginleikum rannsókna neitt.

Þrátt fyrir að Hickson hafi gleymt hvers vegna þessir þættir voru bætt við, getum við samt sem betur fer lesið sérstakan sem lýsir tilgangi sínum.

En hvað gerist þegar þú segir vefhönnuðum og forritara ekki að hafa áhyggjur, þá skiptir þessi þættir bara hvað þú ert að gera núna og tilgreindu þá þá þætti á vissan hátt, ekki hvað vefhönnuðir og verktaki voru að gera? Þú setur þá á einföldan ferð til óreiðu borgarinnar.

Þetta er versta tegund rannsókna: latur túlkun gagna sem gerðar eru til að réttlæta ákvarðanir sem þegar voru gerðar. An oft endurtekin hönnun meginregla HTML5 er að " ryðja kýrbrautirnar ', það er' Þegar æfing er nú þegar útbreidd meðal höfunda, skaltu íhuga að taka hana frekar en að forðast það eða finna eitthvað nýtt. ' Og svo virðist með þessum nýju skipulagsþáttum: hluti, grein, hnú og til hliðar (og haus og fótur) - örugglega eru þetta bara 'paving the cowpaths'?

Það er það sem margir af okkur hafa fengið, eins og það er það sem við höfum verið sagt að þeir séu.

Reyndar næstum fimm árum síðan þegar við fengum fyrst forskoðun á HTML5 , það leit út eins og þessi þættir gætu einfaldlega komið í stað deiliskipanna sem við vorum vanir að nota. Hvað var div id = "haus" efst á síðunni gæti núna orðið haus ; div id = "footer" gæti núna orðið fótgangandi og div okkar gæti bara verið grein. Einfalt, ekki satt?

Við forked the sérstakur

Því miður, þrátt fyrir að gera það sem við vorum sagt (þ.e. bara skipta um einn út fyrir hina), höfum við í raun framkvæmt þessa þætti á þann hátt sem ekki er endurspeglast í HTML5 forskotinu. Það er, þegar það kemur að HTML5 uppbyggingu, höfum við í raun verið að forked spec. Það eru nú tvær aðferðir við HTML5 uppbyggingu þarna úti - samfélag túlkun, sem endurspeglast í 2007 A List Apart grein (og ótal aðrir); og í raun HTML5 forskriftin, sem kynnir nýjan leið til að skipuleggja vefsíðu sem kallast útlínur.

Þetta er mótsögn í hjarta kerfisbundnu merkingarfræði HTML. Annars vegar höfum við ritstjóra að segja okkur að nýju þættirnar byggjast á rannsóknum um það sem við vorum þegar að gera og er því ætlað að gera höfundinn aðeins auðveldara; og á hinn bóginn höfum við það sem ritstjóri reyndi búið til í HTML5 forskriftinni, sem er ný leið til að skipuleggja vefsíðu á þann hátt sem býr til skjalaskýringu með því að nota sneiðarþætti .

Það var skýrt val að gera hér. Brjótast við HTML5 hönnunarreglurnar og kynna eitthvað nýtt, eða einfaldlega fylgja raunverulegum höfundaraðferðum og tilgreina þætti á þann hátt sem endurspeglar vefhönnun. Hickson reyndi að gera hið fyrrnefnda og kalla það hið síðarnefnda, og við höfum nú eitt stóran sóðaskap á hendur okkar.

Svangur fyrir meira? Hluti tvö í þessari grein er nú í boði og bók Luke er "Sannleikurinn um HTML5" er í takmarkaðan tíma í gegnum síðuna systur okkar MightyDeals.com í ótrúlegu 50%

Ert þú að vinna með HTML5 byggingareiningum? Finnst þér þá gagnlegt, eða hindrunarlaust? Láttu okkur vita í athugasemdunum.

Valin mynd / smámynd, notar uppbygging mynda um Shutterstock.