En titt på rätt HTML5-semantik
Om du noggrant planerar strukturen på dina HTML-dokument kan du Hjälpa datorerna meningsfullt av innehållet i ditt innehåll. Korrekt syntax är viktigt, men det ger i grund och botten bara parsers, sökmotorer och assistentteknologier med en meningslös massa data.
Om du förbättrar arbetsflödet framifrån med uppmärksamhet på semantiken kan du skapa ett högre kvalitet som lockar fler besökare. Semantik är studie av mening, i ett bredare sammanhang är det en filial av logik och lingvistik.
I webutvecklingsvärlden pratar vi om semantiskt innehåll när datorer förstår strukturen i ett dokument och roller av elementen inuti den. Om vi vill skapa riktig semantik behöver vi djupt förstå strukturen av vårt innehåll och Förmågor av frontend-teknik.
Så vad är de konkreta fördelarna? Korrekt semantik betyder a mer sökbart innehåll som leder till a bättre rankning av sökmotorer. Vi ökar också tillgängligheten, som hjälpmedel som skärmsläsare kan bättre tolka innebörden av vårt innehåll.
Det finns många olika front-end-utvecklingstekniker som gör det möjligt för utvecklare att uppnå en semantisk sidestruktur. Detta inlägg ger dig en kort introduktion till semantiska HTML-taggar och begreppet dokumentutkast.
Semantiska och icke-semantiska HTML-taggar
Begreppet semantik är inte lika nytt som det verkar, det fanns gott före e-tidsperioden med HTML5. Termen för semantisk webb var mynt så tidigt som 2001 av Sir Tim Berners-Lee. Under “semantisk webb” han menade en web med data som kan bearbetas av maskiner.
Detta innebär i första hand att separata HTML-element måste ha sina urskiljbara strukturella roller. Enligt definitionen av W3C “ett semantiskt element beskriver klart sin betydelse för både webbläsaren och utvecklaren”.
Semantiska element innan HTML5
Semantiska element existerade före HTML5, bara i de flesta fall var utvecklarna inte medvetna om det några av de taggar de använde var faktiskt semantiska. Tänk bara på eller den
taggar.
Deras roller är tydliga för både oss och användaragenten: innehåller bara en form, precis som
innehåller en bild. Ingen kommer någonsin att placera ett bord eller en rubrik inuti och
tagg (eller i alla fall hoppas det).
De
element och dess relaterade taggar som tabellrader, tabellceller etc. är också semantiska taggar som fanns före HTML5, men på grund av den tabellbaserade layouten som användes kraftigt under många år utnyttjade de flesta utvecklare inte dem i semantiskt sätt. Detta ledde till en webb som offrade logisk struktur för layout.
Beordrade och oorderade listor, punkterna, h1-h6 rubrikmarkeringar är alla semantiska element som föregår HTML5.
Icke-semantiska element
Icke-semantiska element har ingen speciell betydelse, de hierarkiska relationerna mellan dem är bara illusoriska. De mest använda exemplen på icke-semantiska HTML-taggar är och den
taggar.
Om din webbplats någonsin fångat den hemska sjukdomen av divitis, du vet vad jag menar. Japp. Divs är inte nödvändigtvis fel, men divitis måste bekämpas om vi vill skriva underhållbar, modulär och meningsfull HTML-kod.
Smashing Magazine förklarar vackert vad det verkliga problemet är med överdriven och orimlig användning av Det finns ingen relation mellan de två, precis som i fallet med Var inte panik om du fortfarande känner dig knuten till HTML5 introducerade många nya semantiska element som möjliggör enkel innehållsorganisation. De hjälper dig inte bara att organisera innehåll på hela dokumentets nivå (se i detaljer i nästa avsnitt), men också inuti textblock, som inline-taggar. Förmodligen är de mest populära textnivån semantiska taggarna Se den här listan för alla semantiska element på textnivå som för närvarande används. Dokumentet är strukturen i ett HTML-dokument. Det visar hur element är relaterade till varandra. Dokumentet har genererats enbart genom kartläggningselement, till exempel rubriker, tabeller, formtitlar och andra i tidigare versioner av HTML, som HTML4.01 och XHTML. I HTML5 har den övergripande algoritmen förbättrats med nya sektionselement, nämligen: Det finns ett femte snittelement i HTML5, men det är inte nytt, det är det Om vi vill skapa en välstrukturerad dokumentbeskrivning måste vi vara uppmärksamma på följande regler: 1. Det yttersta sektionselementet är alltid 2. Sektioner i HTML5 kan nästas. 3. Varje sektion har sin egen rubrik hierarki. Var och en av dem (även den innersta inbädda sektionen) kan ha en 4. Även om dokumentets disposition huvudsakligen definieras av de 5 sektionerna, behöver den också ordentliga rubriker för varje sektion. 5. Det är alltid det första rubrikelementet (låt det vara h1 eller en lägre rangrubriktag) som definierar rubriken i den angivna sektionen. Följande rubriktaggar inom samma avsnitt måste vara relaterade till detta. (Om den första rubriken är en h3 i ett sektionselement, lägg inte en h3 efter det.) 6. De sektioner som definieras av 7. Varje sektion (kropp, sektion, artikel, åt sidan, nav) kan ha sin egen Låt oss se ett exempel på en semantisk dokumentvy för att se tydligare hur det fungerar. Vår exemplar kod kommer att resultera i följande dokumentstruktur: Och här är koden med ordentlig semantisk sektion: Här är vår logotyp och slogan. Punkt 1 i första avsnittet Punkt 2 i första avsnittet Punkt 1 i andra delen Punkt 2 i andra delen Om du tittar på kodavsnittet ovan ser du att rubriker och sidfot är valfria, vi kan fritt välja om vi vill använda dem eller inte, men det är rekommenderas starkt att alltid inkludera en rubrik för varje avsnitt, annars kommer sektionen att vara “Ofrälse” i dokumentets översikt. Lyckligtvis finns det många bra verktyg över hela internet som gör att vi kan kontrollera dokumentets översikt, den här gången använder vi verktyget Outliner av html5.org. Om vi sätter in vårt kodbitar i formuläret som tillhandahålls av outliner och klickar på “Skissera detta!” knappen kommer vi att se följande resultat: Det här är dokument skiss över vår provkod, så ser sökmotorerna på det, och skärmsläsare läser det till sina synskadade användare. Det är semantiskt, välstrukturerat, och det finns ingen otäck “Ofrälse” sektioner i den. Om du vill se hur en Untitled-sektion ser ut i Outliner, raderar du bara några av rubrikkoderna i exemplet. Semantiska HTML-taggar och dokumentutskrifter är bara en liten del av webbsemantik. Innehållet på en webbsida kan göras ännu mer meningsfullt med hjälp av WAI-ARIA-tillgänglighetsprotokollet och strukturerad data som kan användas tillsammans med RDFa-protokollet, mikrodata eller JSON-LD-märkning. tagg som fungerar på samma sätt, bara på inline-nivån.
-s dock, som du behöver inte helt dike dem. De är fortfarande det bästa valet för att gruppera innehåll endast för styling och i andra sista utvägssaker.
Text Semantik i HTML5
och
, men de fanns också före HTML5. Bland de nya inline-semantiska elementen kan vi t.ex. hitta
,
tagg för humanläsbara datum-tider, och för markerad text.
Dokumentbeskrivning i HTML5
för sektioner grupperade kring ett specifikt tema
för kompletta eller självständiga kompositioner till exempel ett blogginlägg eller en widget
för navigationsblock
för kompletterande innehåll, såsom sidofält.
märka. De
och Taggar är också nya, men de skapar inte nya avsnitt i ett dokument, de delar upp innehållet inom sektionerna. Detta innebär att varje sektionselement (kropp, artikel, avsnitt, nav och åt sidan) kan ha sin egen rubrik och sidfot.
Tips för semantiskt strukturerat innehåll
märka.
h1
märka., och den
Taggarna tillhör inte huvudtexten i HTML-dokumentet, de görs vanligen inte initialt av hjälpteknik.
och taggar som definierar rubriken (t.ex. logotyp, författarens namn, datum, metadata, etc.) och sidfoten (upphovsrätt, anteckningar, länkar, etc.) i den sektionen.
Exempel: En semantisk disposition
Välkommen på vår hemsida!
Titel på artikel
Subtitle of Article
Första logiska delen (t ex "teori")
Något annat underrubrik i första avsnittet
Andra logiska delen (t ex "övning")
Andra aspekter av webbsemantik