Поглед към правилната HTML5 семантика
Ако внимателно планирате структурата на HTML документите си, можете помогнете на компютрите да осмислят значението на вашето съдържание. Подходящият синтаксис е важен със сигурност, но той всъщност предоставя само парсери, търсачки и помощни технологии с безсмислен набор от данни.
Ако подобрите своя работен поток от предния край с внимание към семантиката, можете да създадете по-висококачествено съдържание, което привлича повече посетители. Семантика е изучаване на значението, в по-широк контекст клон на логиката и лингвистиката.
В света на уеб разработки говорим за семантично съдържание, когато компютрите разбират структурата на документа и ролите на елементите вътре в него. Ако искаме да създадем подходяща семантика, ние трябва дълбоко разберете структурата на нашето съдържание и на възможности технологии.
И така, какви са осезаемите ползи? Правилната семантика означава a повече съдържание за търсене което води до a по-добро класиране на търсачките. Ние също така увеличаваме достъпността като помощни технологии като например Четецът на екрани може по-добре да интерпретира значението на нашето съдържание.
Има много различни техники за разработка, които позволяват на разработчиците да постигнат семантична структура на страниците. Този пост ще ви предостави кратко въведение в семантични HTML тагове и концепцията на очертанията на документа.
Семантични и несемантични HTML тагове
Концепцията за семантиката не е толкова нова, колкото изглежда, съществувала е много преди ерата на HTML5. Терминът на семантичната мрежа е създаден още през 2001 г. от сър Тим Бърнърс-Лий. при “семантична мрежа” той означаваше мрежа от данни, които могат да бъдат обработвани от машини.
Това преди всичко означава това отделните HTML елементи трябва да имат различими структурни роли. Според дефиницията на W3C “семантичен елемент ясно описва значението му както за браузъра, така и за разработчика”.
Семантични елементи преди HTML5
Семантичните елементи съществуват и преди HTML5, но в повечето случаи разработчиците не са знаели това някои от използваните от тях етикети всъщност са семантични. Просто помислете за или
тагове.
Ролите им са ясни и за нас, и за потребителския агент: просто съдържа форма, точно като
съдържа изображение. Никой никога няма да постави таблица или заглавие вътре и
таг (или поне да се надяваме).
Най-
елемент, както и свързаните с него маркери, като редове на таблици, клетки на таблици и т.н., също са семантични маркери, съществували преди HTML5, но поради оформлението, базирано на таблици, което е използвано силно в продължение на много години, повечето разработчици не ги използват в семантичен начин. Това доведе до мрежа, която жертва логическата структура на оформлението.
поръчан и нерегламентирани списъци, параграфи, h1-h6 заглавни етикети са всички семантични елементи, предшестващи HTML5.
Несемантични елементи
Несемантичните елементи нямат никакво специално значение, йерархичните отношения между тях са просто илюзорни. Най-широко използваните примери за несемантични HTML тагове са и
тагове.
Ако вашият сайт някога е уловил ужасното заболяване на divitis, знаеш за какво говоря. Да. Divs не е задължително погрешно, но divitis трябва да се борим, ако искаме да напишем поддръжка, модулен и смислен HTML код.
Smashing Magazine красиво обяснява какъв е истинският проблем с прекомерната и неразумна употреба на Няма връзка между двете, точно както в случая с Не изпадайте в паника, ако все още се чувствате привързани HTML5 въведе много нови семантични елементи, които правят възможно лесното организиране на съдържанието. Те не само ви помагат да организирате съдържанието на нивото на целия документ (вж. Подробности в следващия раздел), но също и в текстовите блокове, като вградени маркери. Вероятно най-популярните текстови семантични маркери са Вижте този списък за всички семантични елементи на текстово ниво, които се използват в момента. Структурата на документа е структурата на HTML документ. Тя показва как елементите са свързани помежду си. Очертанието на документа е генерирано единствено чрез елементи на картографиране, като заглавия, заглавия на таблици, заглавия на форми и други в по-ранните версии на HTML, като HTML4.01 и XHTML. В HTML5 алгоритъмът за очертаване е подобрен с нови елементи за разделяне, а именно: В HTML5 има пети елемент за разделяне, но той не е нов, той е Ако искаме да създадем добре структуриран документ, трябва да обърнем внимание на следните правила: 1. Най-външният елемент за секциониране винаги е 2. Секциите в HTML5 могат да бъдат вложени. 3. Всяка секция има своя собствена йерархия. Всеки от тях (дори най-вътрешната вложена секция) може да има 4. Докато очертанието на документа е основно дефинирано от 5-те елемента за секциониране, то също се нуждае от правилни заглавия за всеки раздел. 5. Винаги е първият елемент на заглавието (нека е h1 или по-нисък ранг), който определя заглавието на дадения раздел. Следващите заглавия в един и същ раздел трябва да бъдат относителни към това. (Ако първото заглавие е h3 вътре в секциониращия елемент, не поставяйте h3 след това.) 6. Разделите, определени от 7. Всеки раздел (тяло, раздел, статия, настрана, навигация) може да има свои собствени Нека видим пример за очертание на семантичен документ, за да видим по-ясно как работи. Нашият примерен код ще доведе до следната структура на документа: И тук е кодът с правилно семантично разделяне: Ето нашето лого и лозунг. Параграф 1 от първия раздел Параграф 2 в първия раздел Параграф 1, втори раздел Параграф 2, втори раздел Ако погледнете кодовия фрагмент по-горе, ще видите, че заглавките и долните колонтитули са по избор, можем свободно да избираме дали искаме да ги използваме или не, но това е силно се препоръчва винаги да включва заглавие за всеки раздел, в противен случай разделът ще бъде “неозаглавен” в очертанията на документа. За щастие има много чудесни инструменти по целия интернет, които ни позволяват да проверим очертанията на документа, този път ще използваме инструмента на html5.org на Outliner.. Ако вмъкнем кодовия си фрагмент във формуляра, предоставен от проекта, и кликнете върху него “Очертайте това!” ще видим следния резултат: Това е очертайте документа на нашия примерен код, това е начинът, по който търсачките го виждат, а екранните четци го четат на своите потребители с увредено зрение. Той е семантичен, добре структуриран и няма гаден “неозаглавен” раздели в него. Ако искате да видите как изглежда секцията Untitled в Outliner, просто изтрийте някои от заглавните тагове в примерния код. Семантичните HTML тагове и очертанията на документи са само малка част от уеб семантиката. Съдържанието на дадена уеб страница може да бъде направено още по-смислено с помощта на протокола за достъпност WAI-ARIA и структурираните данни, които могат да се използват заедно с протокола RDFa, микроданните или маркировката JSON-LD. , който работи по същия начин, само на вграденото ниво.
-Въпреки това, както не е нужно да ги изхвърляте напълно. Те все още са най-добрият избор за групиране на съдържание единствено за целите на стайлинг и в други случаи на последна инстанция.
Текстова семантика в HTML5
и
, но те съществуват и преди HTML5. Сред новите вградени семантични елементи можем да намерим например
,
за четливи за времето дати, и за маркиран текст.
Очертание на документа в HTML5
за раздели, групирани около определена тема
за пълни или самостоятелни композиции като блог или джаджа
за навигационни блокове
за допълващо съдържание като странични ленти.
маркер. Най-
и таговете също са нови, но те не генерират нови раздели в документ, те разделят съдържанието в секциите. Това означава, че всеки секционен елемент (тяло, статия, раздел, навигация и настрана) може да има свой собствен горен и долен колонтитул.
Съвети за семантично структурирано съдържание
свободен край.
h1
свободен край., и
Таговете не принадлежат към основния контур на HTML документа, те обикновено не се представят първоначално от помощни технологии.
и етикети, определящи заглавката (като лого, име на автора, дати, метаинформация и т.н.) и долния колонтитул (авторско право, бележки, връзки и т.н.) от този раздел.
Пример: Семантичен план
Добре дошли на нашия уебсайт!
Заглавие на чл
Подзаглавие на чл
Първа логическа част (напр. "Теория")
Някои други подзаглавия в първи раздел
Втора логическа част (напр. „Практика“)
Други аспекти на уеб семантиката