Какую роль выполняет doctype
Перейти к содержимому

Какую роль выполняет doctype

  • автор:

Почему важен DOCTYPE и как его правильно использовать

Решил проводить регулярные лекции и практические занятия со своими сотрудниками по программированию на PHP, MySQL, Javascript. А также другим технологиям необходимым для выпуска качественных сайтов. Начать решил с самого «верха», с HTML тэгов. Буду рад, любым комментариям 🙂
Сразу оговорюсь, что бОльшая часть информации я нашел в интернете, внизу статьи будут приведены ссылки на источники. Часть информации была переведена совместно с google translate.
Итак:

Почему так важен DOCTYPE

Вроде бы вы сделали все правильно, но ваш сайт почему-то не выглядит или не работает, как ожидалось, в последних версиях броузеров.
Вы написали правильный стандартный XHTML код и стандартный CSS. Вы воспользовались стандартной спецификацией для работы с DOM (Document Object Model), чтобы управлять динамическими элементами на странице. И все-таки, в броузерах, которые казалось бы сделаны с соблюдением именно этих стандартов, ваш сайт не работает. Скорей всего, ошибка кроется в неправильном заголовке DOCTYPE.
Эта небольшая статья расскажет вам о заголовках DOCTYPE, которые работают, а также объяснит практическое и теоретическое значение этого, казалось бы отвлеченного от реальности, тега.

Что такое DOCTYPE?

Согласно спецификациям HTML и XHTML тег DOCTYPE (что означает «объявление типа документа») сообщает валидатору, какую именно версию (X)HTML вы используете в своей странице. Этот тег должен всегда находиться в первой строке каждой страницы. Тег DOCTYPE — ключевой компонент web-страниц, претендующих на соответствие стандартам: без него ваш код и CSS не пройдут проверку валидатором.
Тег DOCTYPE также важен для правильного отображения и работы страницы в броузерах, соответствующих стандартам (Mozilla, IE5/Mac, и IE6/Win).
Тег DOCTYPE, в атрибутах которого указывается полный URI (полный web-адрес), сообщает броузерам, что страницу нужно вывести с соблюдением определенного стандарта или подвида этого стандарта.
Если вы будете пользоваться неполным тегом DOCTYPE, устаревшим его видом, или вообще забудете про него, броузер перейдет в «загадочный» (quirk) режим и будет исходить из предположения, что вы писали код страницы с ошибками и вольно отступали от стандартов, т.е. так, как писали в конце 90-ых годов.
В этом режиме броузер попытается разобрать вашу страницу по правилам обратной совместимости и выведет на экран, например, CSS так, как его вывел бы Internet Explorer 4-ой версии, а DOM будет работать так, как он работал именно в этом броузере (IE переключается в свой старый DOM, а Mozilla и Netscape 6 переключается вообще в бог знает что).
Понятно, что для вас эти выкрутасы не желательны. Но именно это вы и получите, если будете пользоваться неполным или неправильным тегом DOCTYPE.

Проблема

Когда создавали NN4, IE4 выполняли правила CSS не совсем в соответствии со стандартом. Реализация Netscape была просто ужасной, IE4 подошел к реализации стандарта лучше, но тем не менее, реализовал его не до конца. Хотя IE 5 Windows исправил множество ошибок IE 4, но оставались другие сбои в CSS (в основном в модели окон (window model)).
Поэтому, когда соответствие стандартам стало важным, W3C поставил производителей браузеров перед жестким выбором.
Приблизится к спецификации W3C было одним из решений проблемы, но если бы производители браузеров просто изменили реализацию CSS, чтобы соответствовать стандартам полностью, многие веб-сайты, «поползли» бы в большей или меньшей степени или оказались полностью неработоспособными. Такое сближение с соблюдением стандарта повлекло бы за собой проблемы. С другой стороны, не приведение к соответствию стандартов могло бы внести вечную путаницу в эпоху войны браузеров.

Решение

  • позволить веб-разработчикам, которые знали о стандартах, выбирать какой режим использовать.
  • продолжать показывать старые страницы по старым (совместимым) правилам. (quirks mode)

Иными словами, всем браузерам необходимо было работать в двух режимах: режим совместимости для старых правил, и строгого режима для стандарта.
IE Mac был первым браузером использовавшим оба режима, а Windows IE 6, Mozilla, Safari, Opera и последовали его примеру.
IE 5 Windows, а также старые браузеры, как Netscape 4, постоянно заблокированы в режиме совместимости.

Решение о выборе, какой режим отображения требуется вызвать, было найдено в использовании «DOCTYPE» переключения. Согласно стандартам, любой (X) HTML документ должен иметь DOCTYPE который рассказывает всему миру, какой тип (X) HTML документа он использует.

Допустимые DTD

DOCTYPE Описание
HTML 4.01
Строгий синтаксис HTML.
Переходный синтаксис HTML.
В HTML-документе применяются фреймы.
XHTML 1.0
Строгий синтаксис XHTML.
Переходный синтаксис XHTML.
Документ написан на XHTML и содержит фреймы.
XHTML 1.1
Разработчики XHTML 1.1 предполагают, что он постепенно вытеснит HTML. Никакого деления на виды это определение не имеет, синтаксис один и подчиняется четким правилам.

HTML 4.01 DTDs

  • HTML 4.01 Strict — Не разрешает презентационной (оформительской) разметки, аргументируя тем, что этоим должен заниматься CSS.
  • Transitional DTD позволяет некоторые устаревшие аттрибуты и элементы
  • Если используются фреймы — должен быть использован frameset doctype

XHTML 1.0 DTDs

  • XHTML Strict DTD самый строгий существующий DTD: устаревшие (см ниже) теги не поддерживаются, и код должен быть написан правильно
  • XHTML Transitional DTD такой же как XHTML Strict DTD, но старые теги разрешены. Это НАИБОЛЕЕ ПОПУЛЯРНЫЙ в настоящий момент DTD.
  • XHTML Frameset DTD единственный XHTML DTD который поддерживает фреймы.

XHTML 1.1 DTD

Это новый DTD, который имеет строгость как у XHTML 1.0 Strict, и основан на фреймворке и модулях описанных в Modularization of XHTML (не стал искать что это такое :).

Статистика использования различных DTD

Получается что Более 50% сайтов работают в режиме quirk mode — то есть в режиме IE4!

Устаревшие тэги и аттрибуты

Устаревшие тэги в алфавитном порядке

Устаревшие HTML / XHTML аттрибуты тегов. Все они могут быть заменены CSS стилями.

Разница между HTML и XHTML (указаны правила для XHTML)

  • Тэги должны быть написаны в нижнем регистре, вместо , как это было в HTML, нужно писать:
  • Все теги должны закрываться, или с использованием тэга со слешем в паре, как параграф ( ) например, или самозакрывающиеся тэги, как например (
    ).
  • Все теги должны быть правильно вложены друг в друга, без перекрытий
  • Не должны использоваться устаревшие теги
  • Все аттрибуты должны быть набраны в нижем регистре
  • Все значение аттрибутов должны быть заключены в одинарные или двойные кавычки
  • Все аттрибуты должны использоваться в длинной форме, а не в короткой: disabled=»disabled» в XHTML против DISABLED в HTML
  • Структура должна быть отделена от контента. Например тег

    — это часть контента (параграф) и вы не можете поместить в него например таблицу, потому что таблица это часть структуры (форматирования).

Совместимость и IE8

IE8 имеет четыре режима: IE 5.5 режим совместимости, IE 7 стандартный режим, IE в 8 стандартном режиме и IE 8 в режиме совместимости.
Выбор способа зависит от данных из различных источников: DOCTYPE, meta элементов, заголовков HTTP, периодически загружаемых данных от Microsoft (!), интрасети, настроек, сделанных пользователем, настроек сделанных администратором, наличия сайта в блеклисте microsoft и прочее!

Схема (черт ногу сломит) определения в каком режиме работать браузеру IE8

Источники информации

upd: немного подправил ошибки

HTML — interview questions

Ничего нового миру сообщить не хочу: мне просто нужно место для структуризации своих знаний в области front end в рамках повышения своего профессионального уровня.

Вдохновлена первым успешно проваленным интервью) Провалила его действительно успешно: ребята-interviewers были мега-толковые, вопросы были мега-грамотные, к собеседованию не готовилась, пришла как есть — и в ответах плавала как гусь, но приобрела четкое понимание, где проседаю, за этим, собственно, и приходила.

Вопросы будут как нагугленные, так и из реального опыта.

Какую функцию выполняет DOCTYPE?

Doctype — Document Type Definition — директива, необходимая для уведомления браузера о том, в соответствии каким стандартам сверстан HTML-документ.

Какие варианты DOCTYPE вы знаете?

Для создания документа, сверстанного по стандартам HMTL5, ему нужно указать .

Для документов, сверстанных по стандарту HTML 4.01 предусмотрены следующие варианты DOCTYPE:

В чем различие между режимом стандартов и режимом совместимости?

В режиме совместимости игнорируются все стандарты, и поведение браузера становится непредсказуемым. В режиме совместимости новые браузеры сознательно эмулируют баги старых браузеров (вплоть до 4 интернет эксплорера — и кому, интересно, это нужно?)

А вот чем именно отличается это поведение — вагон нюансов, о которых можно подробно почитать по нижеприведенным ссылкам. Даже не знаю, стоит ли это держать в голове? Не хотелось бы.

Интересно, используют ли знания об особенностях режимов совместимости в реальных проектах?

  • http://htmlbook.ru/samlayout/rezhimy-brauzerov/rezhim-sovmestimosti
  • http://usabili.ru/news/2009/07/09/what_happens_in_quirks_mode.html

Какой элемент позволяет уведомить клиента о том, что у него отключен JavaScript?

Для этой цели существует элемент noscript

Все что расположено внутри элемента noscript будет показано только тем пользователям, у которых отключен JavaScript.

Чем HTML отличается от XML?

XML, как и HTML, является языком разметки, допускающим иерархическую структуру и описывающим разметку с помощью тегов, которые могут иметь атрибуты.

  • Чувствителен к регистру тегов и атрибутов
  • Оперирует произвольными тегами и атрибутами
  • Требует закрытия всех тегов
  • Нет логических атрибутов, все атрибуты являются парами имя — значение.

Что такое XHTML?

Это HTML, сверстанный по строгим правилам языка разметки XML.

В чем состоят ограничения при работе со страницами XHTML?

  • Все тэги должны быть закрыты
  • Недопустима сокращенная запись атрибутов (checked=”checked” a не checked)
  • Только строчные буквы в именах тегов
  • Обязателен один и только один корневой элемент
  • Все спецсимволы должны быть представлены в виде кодов

Существуют ли трудности при работе с такими страницами как application/xhtml+xml?

IE не отображает файлы в таком формате, а пытается загрузить их как обычный файл.

Можно ли использовать синтаксис xhtml в html5?

Корректный xhtml-документ является корректным документом html5

Как работать со страницей, на которой присутствует контент на нескольких языках?

  • Использовать атрибут lang в тэгах (В XHTML атрибут xml:lang) для указания языка, на котором написан данный элемент. Браузер использует этот атрибут для корректного отображения некоторых символов.
  • атрибут lang в html — задает язык всей страницы
  • передача языка в Content-Language HTTP заголовке

О чем следует помнить при оформлении или разработке многоязычных сайтов?

  • Разная длина слов в языках — потенциальные проблемы с невлезающим контентом
  • Необходимо грамотно использовать hreflang атрибут тега link — указывает язык документа, на который ведет ссылка.
  • Для языков, читаемых справа налево нужно использовать dir rtl
  • Необходимо задавать utf-8 кодировку в meta атрибуте
  • Можно задавать разный размер шрифта для разных языков через :lang()

Для чего рекомендуется использовать атрибуты data-?

Для того, чтобы поместить в элемент информацию, не нарушая стандарты html и не создавая “левых” несуществующих тегов.

Что является строительными блоками HTML5?

  • : Представляет блок заголовка страницы;
  • : Подвал страницы;
  • : Навигационные элементы страницы;
  • : Основной контент страницы (статья);
  • : Используется внутри статьи, чтобы разделить статью на секции;
  • : Представляет боковой блок страницы.

У меня этот вопрос звучал в интерпретации: расскажите про эти элементы: header, footer, nav, article, aside. Можно ли поместить на страницу 2 элемента footer?

Почему-то интервьюеры скривились, когда я ответила на этот вопрос: “- Теоретически, можем”. И все же цитата из Новая Большая Книга CSS:

Footer содержит информацию, которая обычно помещается в нижнем колонтитуле страницы (информация об авторских правах и тд). Но на количество ограничений footer на одной странице ограничений не накладывается, вы можете, скажем, поместить нижний колонтитул внутри элемента article чтобы хранить в нем информацию, относящуюся к публикации, например, ссылки или выписки.

В каких браузерах поддерживаются семантические элементы HTML5? Что делать если надо поддерживать более “древние” браузеры?

Минимальные версии браузеров, поддерживающих семантический элементы HTML5, перечислены ниже.

Для поддержка более старых браузеров (кроме IE) необходимо определить блочное отображение неизвестных элементов:

article, aside, figure, figcaption, footer, header, hgroup, nav, section, summary display: block;
>

Для IE lt IE9 поддержку неизвестных элементов можно подключить, зарегистрировав их с помощью JS.

Все это совмещено в т.н. HTML5 shiv, который необходимо подключить в head.

Что такое блочная модель? Какие box-модели есть в HTML4 и есть ли отличия в HTML5?

Каждый элемент в HTML документе выводится внутри отдельного прямоугольного блока, описываемого блочной моделью.

Согласно блочной модели, каждый блок состоит из

Существует 2 блочные модели:

  • модель от W3C — поддерживается всеми браузерами
  • традиционная модель — поддерживается IE6 в режиме обратной совместимости

Отличия: ширина блока в стандартной модели включает только ширину контентной части, в древней традиционной модели — все кроме margins.

Управлять блочной моделью можно с помощью свойства box-sizing:

  • content-box — дефолтное значение — при расчете ширины учитывается только контент
  • border-box — при расчете ширины учитываются паддинги и границы

Box-sizing не работает IE старше IE 8;

Про отличия в HTML4 и HTML5 я ничего не нашла.

Что такое ul и ol?

Unordered list и Ordered list

Что такое адаптивная и резиновая верстка?

  • фиксированная — не реагирует на изменение ширины страницы
  • резиновая — блоки тянутся при изменении ширины страницы
  • адаптивная — при изменении ширины страницы изменяется разметка, причем рывками
  • отзывчивая = адаптивная + резиновая

Здесь можно потягать страницу с примером и прочувствовать разницу

Как открыть ссылку в новом окне браузера?

С помощью значения _blank атрибута target элемента anchor.

В целом target может принимать следующие значения:

  • _blank
  • _self — поведение по умолчанию, открывает ссылку в том же окне
  • _parent — открывает в родительском фрейме, если у родителя фрейма нет, работает как _self
  • _top — oтменяет все фреймы и загружает страницу в полном окне браузера, если фреймов нет, то это значение работает как _self.
  • framename —открывает во фрейме с заданнным именем

(_parent и _top какие-то странные).

Как сделать так, чтобы все ссылки на странице открывались в новом окне браузера?

Прописать желаемое поведение в base элементе внутри тега header

За что отвечает элемент base?

  1. В нем можно указать базовый адрес текущего документа;
  2. В нем можно задать целевое окно для всех ссылок на странице

На что влияет attribute type элемента input? Какие вы знаете types input’а?

Этот атрибут сообщает браузеру, какое именно поле мы создаем и полностью определяет внешний вид и поведение элемента.

Типы: button, checkbox, file, hidden, image, password, radio, reset, submit, text.

Новые типы в HTML5: color, date, datetime, datetime-local, email, number, range, search, tel, time, url, month, week.

Q: Объясните различие между , и

  1. Загрузка происходит синхронно. Браузер видит тег , начинает его загружать, потом выполнять, и пока не завершит — дальше страницу не рендерит.

2. работает полностью асинхронно. Браузер видит тег , начинает его загружать, но при этом продолжает рендерить страницу.

  • Скрипт начнет выполняться как только загрузится, вне зависимости от того, вся ли страница отрендерилась
  • При загрузке нескольких ничего не гарантируется. Кто первый догрузится, тот первый и отработает, как повезет.
  • Поддерживается всеми браузерами, кроме IE9.

3. работает также асинхронно. Браузер видит тег , начинает его загружать, но при этом продолжает рендерить страницу.

  • Скрипт начнет выполняться только после того, как вся страница отрендерилась
  • При загрузке нескольких гарантируется последовательный порядок их выполнения.
  • Поддерживается всеми браузерами.

Илья Кантор как всегда объясняет шикарно.

Q: Почему хорошей практикой считается вставлять CSS s между тегами а JS сразу перед ? Знаете ли вы какие-либо исключения?

Стили нужно применять к странице сразу при ее отрисовке, а скрипты (обычно) могут и подождать.

Вполне вероятна ситуация, когда некоторые “тяжелые” стили (анимации или сложные градиенты) можно подгрузить попозже, а значит, поместить в конец body, а некоторый жизненно необходимый javascript (счетчик посещений, которому невмоготу ждать загрузки длинной нудной страницы) нужно загружать сразу же и потому стоит поместить в head.

Q: Что такое прогрессивный рендеринг?

Это такая технология загрузки страницы, когда браузер не ждет, пока весь контент страницы будет целиком загружен, а отрисовывает каждую поступившую часть сразу же.

А тут долго и в подробностях

Q: Использовали ли Вы какие-либо языки HTML шаблонов?

В ASP.NET был Razor, немного приходилось EJS крутить, но совсем капельку.

Для продолжения

Знакомы ли с подводными камнями вёрстки почтовых шаблонов?Способы оптимизации загрузки изображений?

HTML-теги, без которых в SEO никуда

Мы привыкли, что большинство манипуляций с HTML-кодом выполняет программист. Так и должно быть. Но это ни в коем случае не освобождает сеошника от необходимости знать базовые HTML-теги. Как минимум — для правильной постановки ТЗ, а как максимум — для понимания, как теги влияют на SEO. Какие теги и атрибуты важны для продвижения, как их правильно оформлять и зачем они нужны? Мы прошлись по самым важным для сеошников и диджитал-маркетологов тегам и составили список, чтобы вы могли освежить свои знания или же разобраться в основах HTML с нуля.

База — коротко о важном

HTML-код страницы

HTML-код — это язык, с помощью которого страница сообщает браузеру, какие элементы она содержит, и что нужно выводить на экран. HTML — это основа большинства веб-страниц и одна из важнейших частей технического SEO. С помощью элементов HTML SEO-специалисты могут предоставлять информацию о страницах как пользователям, так и краулерам. Таким образом, можно понять, какая структура страницы и порядок ее содержимого, а также как одна страница связана с другими. Простыми словами, если зайти на страницу сайта, вы увидите сверстанный текст, с разделами и подзаголовками, картинками и ссылками. Но для браузера и поисковых систем такая страница представляет собой просто строки HTML-кода с определенными элементами. Мы уже затронули термины «элемент HTML» и «тег», но есть также метатеги и атрибуты. Вы легко можете запутаться, если не знаете, в чем разница. Поэтому давайте разберем основные термины, которые мы будем часто использовать в этой статье.

Структура элемента HTML

Схема — элемент HTML

HTML-код состоит из элементов, каждый из которых может быть тегом или метатегом. Если у него есть дополнительные характеристики, это атрибуты. Элемент HTML -— это тип компонента HTML-документа, который состоит из дерева простых узлов HTML, таких как текстовые узлы. Такие элементы позволяют HTML-документу иметь определенную семантику и форматирование. На картинке детально показано, из чего состоит элемент HTML. В данном случае это заголовок, который обозначается в коде с помощью открывающего тега и закрывающего тега . У заголовка есть атрибут align=“left”, который выравнивает его по левой части страницы. Тег — это элемент языка HTML. С его помощью разграничивают начало и конец каждого элемента. Теги определяют, как браузеры форматируют и отображают содержимое страницы. Например, если мы хотим подчеркнуть текст на странице, используется тег . Теги могут быть парными, один из них открывающий, а другой — закрывающий (например, ), или одиночными (например, или ). Метатег — это разновидность тега. С его помощью поисковики и браузеры получают техническую информацию о странице сайта — описание страницы, ключевые слова, кодировку документа, правила индексирования для поисковиков и другие. Все метатеги должны находиться в теге документа. Интересно, что description и keywords являются метатегами, а titleтегом. Атрибут — дополнительная характеристика тега или метатега. Они представляют собой специальные слова, которые используются внутри начального тега для управления поведением элемента. Например, ранее мы говорили о теге, который добавляет на страницу картинку. А вот его атрибут alt задает альтернативный текст для изображения в случае, если оно не будет отображаться.

Чем теги отличаются от атрибутов

Многие не видят разницы между терминами «тег» и «атрибут». Но отличия есть. Давайте разбираться с терминологией. Вот пример элемента HTML, в котором можно выделить три части:

 

Добро пожаловать в мой блог о SEO

открывает тег, «Добро пожаловать в мой блог о SEO» — это содержание тега, а

закрывает тег. Элемент HTML в приведенном выше примере — это видимый заголовок на странице блога. Теперь давайте проведем различие.Если теги должны иметь начальный и конечный элементы для правильного функционирования, то атрибуты нет — они добавляются к элементам HTML как модификаторы, например:

В этом примере rel= и href= являются атрибутами тега . Обратите внимание, что существуют также пустые элементы, такие как
, у которых нет содержания или закрывающего тега.

Зачем теги поисковикам и юзерам

Сниппет в выдаче

Что такое теги и атрибуты понятно, но зачем они нужны поисковым системам, браузерам и юзерам? Поисковики используют теги, чтобы получить информацию о содержимом страницы и включить ее в результаты поиска. Прямое тому подтверждение — сниппет в выдаче, который обычно формируется с помощью тега title и метатега description. Но если заголовок и описание страницы будут составлены некорректно (не отвечают действительности, переспамлены ключами и т. д.), Google заменит их на более подходящие, взятые из разметки и содержания страницы. В справках Search Console указаны списки метатегов, которые поддерживает Google соответственно. Обязательно ознакомьтесь с ними, если хотите узнать больше о каждом HTML-теге. Теги помогают браузеру считывать информацию о странице. Благодаря этому текст, картинки и ссылки на наших мониторах отображаются именно так, как указано в HTML-коде. Сложно представить, если бы нам приходилось «вылавливать» текст на сайте из кода. Теперь, когда мы разобрались с основными понятиями HTML, давайте перейдем к самому интересному: тегам и атрибутам, которые важны для поисковой оптимизации.

3 основных HTML-тега

Если вы хотите создать страницу, которая будет полезна людям и, что более важно в контексте этой статьи, поисковикам, вы должны добавить в код три ключевых HTML-тега.

Тег указывает, что страница является веб-страницей

Тег — это самый первый тег, который вы должны добавить в код своей страницы. Он указывает поисковым системам, что данная страница — это веб-страница. Хоть сам по себе не является HTML-тегом (поэтому у него нет никаких атрибутов), он предоставляет браузерам очень важную информацию, которая позволяет узнать, согласно какому стандарту нужно отображать страницу. Вот как используют тег в коде:

   Заголовок документа  Текст документа 

Таким образом, браузер поймет, что страница создана на HTML. И у него точно не возникнет проблем с обработкой кода и верным отображением страницы.

Тег содержит метаданные страницы

Тег представляет самый первый раздел страницы и содержит информацию, которая не отображается напрямую на странице в браузере. Важно: внутри тега размещаются одни из ключевых SEO-тегов. Элемент находится между тегами и и служит контейнером для метаданных. Как правило, метаданные определяют заголовок документа, его набор символов, стили, скрипты и т. д. Тег может содержать следующие элементы HTML: , , , , , и обязательно . Вот как выглядит HTML-код:

    Тайтл документа  

Это заголовок текста

А это абзац.

Пример элемента head на странице

Если запустить код, увидим следующее: Как видим на примере, тег содержит такие метаданные, как тайтл документа, который не отображается на странице. Но тег также может хранить другие элементы, цель которых — помочь браузеру в работе с данными. Универсальные атрибуты, которые можно использовать с любым элементом HTML, доступны и для тега .

Тег определяет основной контент страницы

Тег определяет содержание документа и хранит информацию на странице, которая видна пользователю — это могут быть текст, изображения и видео. По сути, тег хранит весь контент HTML-документа, включая заголовки, абзацы, мультимедиа, гиперссылки, таблицы, списки и т. д. Все, что человек видит на странице, размещается в теге , который, кстати, может встречаться в документе только один раз. Вот как выглядит HTML-код:

  Тайтл документа   

Это заголовок

А это абзац.

Если запустить код, увидим следующее: Пример тега bodyВ отличие от предыдущего примера, в этом случае мы можем видеть элементы HTML, которые размещены в теге : и

. Тег поддерживает универсальные атрибуты HTML, которые можно использовать с любым элементом HTML. Для него также доступны атрибуты событий, которые позволяют запускать действия в браузерах в ответ на определенные действия пользователя или на изменения состояния документа/окна браузера.

Полезные для SEO теги и их атрибуты

А теперь перейдем к другим HTML-тегам, которые могут помочь в SEO. С помощью тегов вы на понятном для браузеров и поисковиков языке даете всю необходимую информацию о том, как обращаться с вашей страницей, каковы ее задачи и наполнение. Единственное — нужно знать, как правильно передать эту информацию. Безусловно, если теги используются верно, продвижение от этого только выиграет.

1) — рассказывает, о чем ваша страница

Любимый тег сеошников — — помогает и поисковикам, и юзерам понять, о чем ваша страница. Title отображается в результатах поиска в виде кликабельного заголовка. Он очень важен для юзабилити, поисковой оптимизации и обмена информацией в социальных сетях. Тег предназначен для точного и лаконичного описания содержания страницы, чтобы побудить людей перейти на страницу и предоставить поисковикам дополнительную информацию о теме страницы.Title отображается не только в сниппете, но и во вкладке браузера и помогает пользователю ориентироваться, какие страницы открыты. Некоторые тайтлы таким образом привлекают внимание пользователей — при переходе на другую вкладку текст тайтла меняется на что-то вроде «Вернись, мы уже скучаем!». Тайтл на вкладке браузераТакже title отображается как анкор ссылки на вашу страницу при ее репостах в соцсетях, если вы не используете разметку Open Graph. Именно поэтому title должен быть лаконичным, информативным, уникальным и интересным потенциальным читателям. Вот как это выглядит в Facebook: Тайтл в публикации FacebookДлина title должна быть около 60-70 символов, так как слишком длинные тайтлы все равно обрезаются до 600 пикселей. Как результат — в сниппете выводится неполная информация. С размером тайтла разобрались, а что с ключевыми словам — использовать их в тайтле или нет? Пару лет назад Брайан Дин (Backlinko) проводил исследование, в котором упоминалось о том, насколько точное вхождение ключевого слова в title влияет на увеличение позиций. Ответ — да, ключ может помочь повысить позиции, но прямой связи между точным вхождением ключа и ростом позиций нет. Google давно научился анализировать семантику страницы, не зацикливаясь на одних только тегах, как это было раньше. Вывод – использовать ключевые слова нужно, но только с целью помочь как поисковым системам, так и пользователям понять, о чем ваша страница, не более того. Также в title можно указать другие дополнительные сведения, такие как цена, бренд, возможность доставки и т.д. Подробнее о том, как их правильно использовать, можно почитать в гайде по заголовкам и описаниям. Вот как выглядит HTML-код:

    Тайтл страницы  

Это заголовок

А это абзац.

Код тайтла на странице

А вот как выглядит код на опубликованной странице: Поскольку элемент является частью тега HTML-файла, он не отображается на самой странице. Кроме того, в одном документе может быть только один тег . Тег поддерживает универсальные атрибуты HTML, но ему не доступны атрибуты событий.

2) — дает дополнительную информацию о странице

Тег (его еще называют метаданными) помогает браузерам и поисковикам «считывать» служебную информацию о странице, которая не выводится на экран. Размещена такая информация в контейнере . Тег обычно используется для указания описания страницы, ключевых слов, автора документа, правил индексирования, а также настроек области просмотра. Давайте рассмотрим атрибуты, которые может содержать тег .

Атрибут name

Атрибут name показывает, с каким метатегом мы имеем дело. Его основная цель — сообщить ботам, предназначена ли информация на странице для них.

  • указания целевых ключевых слов на странице (хотя сейчас это уже неактуально):
  • указания автора контента:

В интернете ходит много баек о том, нужно ли заполнять keywords. Десять лет назад это что-то могло давать в продвижении, но не сейчас — представители Google уже неоднократно заявляли о том, что keywords не учитывается поисковиком при ранжировании сайта. Нет никакого смысла его заполнять.
Кроме того, SEO-эксперт Билл Славски провел опрос, который подтвердил, что метатеги keywords остались в прошлом.

Опрос Билла Славски в Твиттере

Но это далеко не все значения атрибута name. Давайте детальнее рассмотрим некоторые из них.

Description

Description описывает содержимое страницы и отображается в поисковой выдаче сразу под тегом :

Description в сниппете

Вот как выглядит его HTML-код:

Description не только предоставляет поисковикам дополнительную информацию о странице, но и позволяет авторам создать привлекательный текст, прочитав который, люди будут переходить на страницу прямо из результатов поиска.

Текст description должен быть кликбейтным, чтобы пользователям хотелось перейти на страницу. Но учтите, что Google часто заменяет предоставленный description текстом, который наиболее релевантен поисковому запросу пользователя.

Description не гарантирует стопроцентного улучшения позиций в выдаче, но он может повысить ваш CTR — а это, в свою очередь, рассматривается как положительный фактор ранжирования.

Viewport

Viewport позволяет управлять шириной и масштабированием области просмотра (то, что видит пользователь, когда заходит на страницу) так, чтобы она правильно отображалась на экранах всех размеров — на компьютерах, ноутбуках, планшетах и мобильных телефонах.

Вот как выглядит HTML-код. Советую добавить его на все свои страницы:

С помощью этих данных браузеры могут получить информацию о том, как именно управлять размерами страниц и изменять их масштаб.

Давайте разберем код. Часть width=device-width задает ширину страницы в соответствии с размером экрана используемого устройства.

Часть initial-scale=1.0 устанавливает начальный уровень масштабирования при первой загрузке страницы браузером. Так вы можете проверить, как настроена ваша страница.

Ниже вы найдете пример двух страниц, одна из которых использует viewport, а другая — нет:

Страница с метатегом viewport и без него

В эпоху, когда удобство сайта напрямую влияет на его позиции, просто недопустимо создавать страницы, которые не подстраиваются под размеры разных экранов. Люди сразу же покинут вашу страницу, если она будет похожа на пример слева.

Twitter Card

Twitter Card — это расширение для твитов. Это настраиваемые мультимедийные блоки, которые PPC-специалисты могут использовать для привлечения трафика на свои сайты и/или в мобильные приложения.

Существуют разные типы разметки Twitter Card, каждая из которых специально разработана для пользователей десктопной или мобильной версии Twitter:

  • Summary Card. Стандартная карточка с заголовком, описанием и изображением.
  • Summary Card with Large Image. Та же самая Summary, только большой акцент сделан на изображении.
  • App Card. Позволяет скачать мобильное приложение.
  • Player Card. Позволяет отображать видео, аудио и другие медиафайлы.

Чтобы сделать разметку Twitter Card, вам необходимо указать тип карты, тайтл, описание и изображение, добавив HTML-разметку в тег страницы.

Вот как выглядит HTML-код:

Благодаря такому метатегу в твите, где есть ссылка на ваш сайт будет отображаться карточка страницы, которую смогут увидеть подписчики:

Разметка Twitter Card

Без Twitter Card заголовок страницы, описание, изображение и т. д. не будут отображаться в ваших твитах вместе со ссылкой. Вместо этого Twitter будет извлекать данные из соответствующих тегов Open Graph, если такие есть.

Здесь можно узнать больше о Twitter Cards.

Атрибут content

Этот атрибут выступает в паре с атрибутом name и http-equiv и раскрывает смысл тега для поисковика. По сути, он рассказывает, какой контент содержит в себе тег.

Вот пример атрибута content в метатеге description:

А вот как это выглядит на странице (помните, что description отображается только в поисковой выдаче):

Пример использования атрибута content

Вместе с атрибутом http-equiv, о котором мы расскажем позже, атрибут content определяет тип данных, отправляемых в браузер.

Но сначала давайте остановимся на очень важном значении атрибута content.

Noindex

Директива noindex позволяет вебмастерам обозначить контент, который может быть проиндексирован поисковиками и отображен в выдаче. По сути, с помощью noindex можно разрешить или запретить краулерам индексировать контент на странице.

Подобно метатегу robots, noindex обычно называют тегом noindex из-за его использования, хотя он является значением атрибута content.

Вот как выглядит HTML-код:

Вот несколько директив, которые используют в метатеге robots, помимо noindex (можно использовать их комбинации):

Не переходить ни по одной ссылке со страницы, а также не учитывать вес ссылок при ранжировании.

Индексировать содержимое страницы, но не переходить по ссылкам.

Noindex точно пригодится, если вы хотите исключить конфиденциальную информацию из органического поиска. Например, у вас на сайте есть страницы, к которым можно получить доступ только по платной подписке, а отсутствие тега noindex сделает «платный» контент доступным для всех пользователей через результаты поиска.

Используя директивы robots на странице, убедитесь что она не заблокирована в файле robots.txt. В противном случае поисковики просто не смогут попасть на страницу и увидеть указанные в метатеге директивы.

Атрибут http-equiv

Если у вас нет возможности настроить заголовки HTTP непосредственно на сервере вашего сайта, на помощь приходит атрибут http-equiv.

Браузеры преобразуют значение атрибута http-equiv, заданное с помощью атрибута content, в формат заголовка ответа HTTP и обрабатывают их так, как если бы они поступали непосредственно с сервера.

Вот пример того, как выглядит HTML-код:

Заголовок HTTP раскрывает много полезных для сеошников данных — например, статус ответа сервера (200, 404 и т. д.) или имя сервера, который отправил ответ.

Также его можно использовать, чтобы указать канонический URL для запрашиваемой страницы, запретить роботам индексировать страницу с помощью элемента заголовка HTTP X-Robots-Tag или настроить HTML-редирект с помощью атрибута refresh. Вот некоторые из значений, которые можно использовать в атрибуте http-equiv:

Определяет политику защиты контента

Задает кодировку документа

Указывает таблицу стилей документа, которая используется по умолчанию

Определяет, как часто (в секундах) документ должен автоматически обновляться

Атрибут charset

Атрибут charset отвечает за кодировку документа. Кодировку нужно указывать, чтобы браузер правильно отображал текст документа на странице. Если в теге с кодировкой будет ошибка, на странице вы увидите сплошные иероглифы.

Вот как выглядит HTML-код:

Самый распространенный стандарт кодировки — UTF-8, ее поддерживают все современные браузеры и поисковые системы, а также используют 96,6% проанализированных сайтов. Другие стандарты кодировки, такие как ISO-8859-1, Windows-1251 и Windows-1252 используют менее чем 3% сайтов.

Главное, не использовать несколько стандартов кодировки в одном документе — так вы запутаете поисковик и браузер, что может привести к проблемам с индексированием контента и некорректному отображению текста.

Сейчас практически все поисковики научились самостоятельно определять кодировку страницы, но все же рекомендуется прописать кодировку, чтобы избежать проблем.

3) и — создают ссылки

Без тега невозможно обозначить ссылку, ведущую с одной страницы на другую. По сути, стандартная гиперссылка на странице — это и есть тег .

Вот пример того, как выглядит HTML-код гиперссылки:

На опубликованной странице приведенный выше пример будет выглядеть вот так:

Теперь давайте разберем, из чего состоит HTML-код ссылки. У нас есть тег , который указывает, что элемент является ссылкой. Атрибут href= определяет страницу, на которую ведет ссылка, в нашем случае это https://seranking.ru. Текст между начальным тегом и конечным — это анкор, который посетители сайта будут видеть на странице.

Важно: тег используется для кликабельных ссылок, которые размещаются внутри основного содержимого страницы — то есть в теге . Если вам нужно связать страницу с внешним ресурсом, содержащим шрифты или внешние таблицы стилей, используйте тег , который находится в страницы.

Вот как выглядит его HTML-код:

Обратите внимание, что ссылки тега не являются гиперссылками, на них нельзя нажимать, а сам элемент содержит только атрибуты, которые указывают на связь с каким-либо внешним документом.

Теперь давайте рассмотрим подробнее атрибуты тегов и .

Атрибуты hreflang

Атрибут hreflang в первую очередь предназначен для сайтов, у которых есть несколько языковых версий. С его помощью поисковики могут самостоятельно выбрать, какую версию показать в выдаче, основываясь на географии и языке пользователя.

Атрибут hreflang также можно использовать в теге , где он определяет язык страницы, на которую ведет ссылка. Как и тег , атрибут должен быть размещен внутри страницы. Вот как выглядит HTML-код:

Код можно разделить на три части:

  • Rel=“alternate” указывает поисковым системам, что у страницы есть локализированная версия.
  • Атрибут href= определяет URL внешнего файла.
  • Код языка, указанный после атрибута hreflang=, позволяет поисковикам узнать язык страницы. По ссылке можно ознакомиться с полным списком языковых кодов ISO 639-1.

Важно: атрибут hreflang может также использоваться в заголовке HTTP для не HTML-документов, а еще его можно указать в XML-карте сайта.

Атрибут rel=“nofollow”

Атрибут rel=“nofollow” сообщает ботам поисковых систем, что им запрещено переходить по URL-адресу, указанному в атрибуте href.

Данный атрибут никак не касается посетителей сайта — они могут спокойно переходить по этим ссылкам на другие страницы. Он предназначен только для краулеров — они не смогут перейти по ссылке и посетить страницу или отметить какой-то положительный фактор связи обеих страниц.

Этот атрибут можно применить к ссылке следующим образом:

Или вы можете сделать все ссылки на сайте nofollow, используя этот атрибут в теге , как noindex:

Но даже от ссылок nofollow вы можете получить косвенную выгоду, если посетители сайта будут переходить по ним.

Как Google использует атрибут rel=“nofollow”

Несколько лет назад поисковый гигант внес изменения в принцип работы атрибута nofollow и ввел атрибуты rel=“ugс” и rel=“sponsored”. В отличие от nofollow, эти новые атрибуты позволяют вебмастерам четче определять связь между ссылками и их целевыми страницами.

Они помогают Google распознать, в каких случаях страницы, на которые ссылаются, не нужно учитывать при ранжировании:

  • атрибут rel=“ugc” указывает на контент, созданный пользователями, и используется для отметки ссылок, которые оставили в комментариях или на форуме;
  • атрибут rel=“sponsored” используется для идентификации рекламных или спонсорских ссылок.

Google также заявил, что атрибуты “nofollow”, rel=“ugc” и rel=“sponsored” теперь рассматриваются как подсказки. Раньше бот Google игнорировал такие ссылки, но теперь он может рассмотреть предоставленную «подсказку» и сам решить, использовать ссылку для ранжирования или нет.

Атрибут canonical

Атрибут rel=“canonical” позволяет сеошникам указывать, какая из страниц каноническая — то есть основная ее версия.

Это помогает продвигать определенную страницу в органической выдаче, не позволяя ее дублям ранжироваться.

Вот как выглядит этот атрибут:

Код с атрибутом canonical должен быть помещен в страницы. Важно: каноническую страницу нужно указать после атрибута href=.

Узнайте, что говорит о канонических URL Google.

4) — отображает картинки и описывает их содержимое

Тег есть на любой странице, где присутствуют картинки. Его используют для отображения картинок в форматах PNG, JPEG или GIF. Также картинку можно добавить в виде ссылки на другой файл — для этого достаточно поместить тег в контейнер .

А еще картинки можно использовать в качестве карт-изображений, если картинка содержит интерактивные области, которые работают как ссылки. Карты-изображения ничем не отличаются от обычных картинок, кроме того, что первые разбиты на невидимые зоны различной формы, на которые можно кликать.

Тег по сути указывает браузеру, где именно на сервере хранится изображение, а браузер уже сам подтягивает картинку и выводит ее на страницу.

Вот как выглядит HTML-код тега :

Как видите, в этом теге есть три атрибута. Один из них обязательно нужно правильно заполнить, чтобы тег функционировал, а другие можно оставить без значений. Давайте рассмотрим их подробнее.

Атрибут src

Атрибут src= указывает путь к графическому файлу, то есть ссылку на картинку.

Местоположение изображения, то есть его URL, можно указать двумя способами:

  • Если его можно найти в том же домене, где расположена страница, нужно использовать относительныйURL. В этом случае доменное имя не включается в URL. Если в начале URL-адреса нет слэша — значит он относится к текущей странице.
src=”imagefile.png”

А если в начале URL есть слэш, значит, он относится к домену.

src=”/images/imagefile.png”

Обратите внимание, что относительные URL-адреса не становятся битыми при изменении домена, например при переезде с HTTP на HTTPS. А вот если браузер не сможет распознать изображение, вместе со значком неработающей ссылки будет отображаться альтернативный текст.

  • Если вы хотите использовать изображение, которое находится на другом сайте, указывайте абсолютный URL-адрес.
src=”https://www.website.com/images/imagefile.png”

Важно: использование изображений из внешних ресурсов без разрешения может нарушать авторское право. Плюс вы не сможете следить за такими картинками и не узнаете, когда их удалят или обновят.

Единственная цель атрибута src с точки зрения SEO — индексация изображений и их ранжирование в поиске по картинкам. И да, тег image просто не будет работать без этого атрибута.

Атрибут alt

Атрибут alt задает альтернативный текст для изображения, который будет отображаться в случае, если картинка по каким-то причинам не откроется. По сути, атрибут alt описывает то, что изображено на картинке — так поисковики могут понять, насколько релевантно изображение и по какому запросу отображать картинку в выдаче.

Попробуйте в alt-тексте использовать ключевые слова, которые а) описывают изображение и б) относятся к теме страницы.

А чем же полезен атрибут alt= для пользователей? Текст в этом атрибуте используют скринридеры, чтобы дать возможность слепым или слабовидящим людям понять, что же изображено на картинке. Поэтому вы можете использовать атрибут alt, чтобы помочь таким людям ознакомиться с контентом.

Альтернативный текст изображения

Помните, как я говорила, что два атрибута можно оставить без значения? Хоть атрибуты alt= и title= должны быть в теге image, заполнять их необязательно. Но, учитывая вышесказанное, вы наверняка захотите это сделать.

Атрибут title

Атрибут title описывает содержимое картинки.

Хоть этот атрибут не так важен для оптимизации, как alt, заполнять его стоит как минимум потому, что он отображается в виде подсказки, когда наводишь курсором на картинку.

Описание картинки

С тегом также используют много других атрибутов, отвечающих за расположение картинки на странице, ее размеры и особенности дизайна. Вот небольшая таблица, в которой они собраны:

Тег i на странице блога

  • акцентирует внимание на тексте. Содержимое тега выделяется курсивом. Он позволяет скринридерам понять, на каких словах стоит сделать акцент во время чтения.
Выделенный текст

Тег em на странице

Ключевое различие между тегами и заключается в том, что последний делает смысловое ударение на важном слове или словосочетании (важно для SEO), в то время как первый — это просто текст, который выделен курсивом для отображения определенного настроения или интонации.

Текст полужирным

Тег b на странице

  • — тоже выделяет текст полужирным. Но в отличие от этот тег показывает поисковикам, что выделенный текст очень важен. А тег просто делает слова полужирными, не придавая этому особого значения.
Важный текст

Тег strong на странице

    ,
    — помогают попасть в быстрые ответы

Таблица, как и список, помогает упорядочить информацию на странице. Как бонус — возможность попасть в быстрый ответ в выдаче. Например, по запросу «рейтинг стран» мы видим быстрый ответ с таблицей:

Таблица в выдаче

Проверив код на странице, которая получила такой блок с ответом, мы нашли таблицу, оформленную следующим образом:

Код таблицы

Вот так выглядит HTML-код без дополнительных данных:

 
Рейтинг стран Япония

А теперь давайте разберемся, как правильно использовать теги , , , и :

  • — этот тег определяет структуру и содержимое таблицы. Внутри используются такие элементы как , , , и другие. С помощью атрибутов можно полностью изменить таблицу: align (выровнять таблицу), background (задать картинку как фон), bgcolor (изменить цвет фона), border (задать толщину рамки) и другое.
  • — создает заголовок для описания таблицы.
  • — создает строку таблицы.
  • — создает отдельную ячейку в таблице.
  • — создает заголовочную ячейку таблицы, текст в которой выделен полужирным и выровнен по центру.

Что касается списков, здесь похожая история. Польза списков для SEO состоит в том, что оформив текст четко и лаконично в пошаговую инструкцию, вы можете увеличить ваш шанс попасть в блок с ответами.

Список в выдаче

    ) и списков с буллетами (
    ):

  • Пункт списка с буллетами
  • Еще один пункт
  1. Пункт пронумерованного списка
  2. Еще один пункт

Давайте разберемся, как правильно использовать теги , и :

  • — обозначает список с буллетами (unordered list).
  • — обозначает нумерованный список (ordered list).
  • — определяет отдельный пункт списка. Каждый элемент списка должен начинаться с тега .

Для SEO лучше использовать таблицы, а не списки, потому что таблицы позволяют поисковым системам легко извлекать данные и в результате выводить статьи в ТОП.

7) — делает контент читабельным

Тег задает «шапку» сайта или раздела страницы, где обычно располагается логотип, поисковая форма и навигационные ссылки.

Важно: в одном HTML-коде может быть несколько тегов , но сам тег не может быть размещен в тегах , или внутри другого тега . Тег поддерживает универсальные атрибуты HTML и события.

Вот как выглядит HTML-код:

    

Напишите здесь заголовок

Опубликовано Дарьей Ивановой

Представьте ваш текст

И детально напишите все, что хотели

Содержание тега header

Это всего лишь пример. Элемент можно легко найти на многих сайтах — он находится в самом верху:

Хедер сайта SE Ranking

Что это дает SEO? Краулеры считают хедеры удобными для пользователя — они дают юзерам возможность легко находить нужную информацию на сайте. Без хедеров поисковые роботы могут подумать, что ваша страница не user-friendly, и в результате ваши позиции в выдаче упадут. А еще тег может содержать внутренние навигационные ссылки — это дает поисковикам четкое представление о том, какие страницы наиболее важны в структуре вашего сайта.

8) … — структурируют текст на разделы

Каждый текст на странице имеет свою структуру, которая помогает и поисковикам, и пользователям понять, о чем же будет идти речь. Так у текста появляется название и смысловые блоки — каждый со своим заголовком. В HTML используются специальные теги, чтобы выделить на странице эти элементы.

Заголовки разделов

Существует шесть уровней заголовков — от h1 до h6. используется как главный заголовок текста на странице и обычно размещается над текстом. Все заголовки размещаются по принципу иерархии (от до ), при этом обычно используется только один .

Вот как выглядит HTML-код:

Все о тегах для новичков в SEO

Мы решили написать эту статью, потому что периодически получали вопросы в поддержку, связанные с HTML-тегами.

С чего начать

Мы не будем учить вас писать код для сайта, а покажем, с какими тегами чаще всего сталкивается сеошник.

Кстати, приоритет использования подтверждается экспериментом сеошников, о котором упоминал у себя в telegram-канале Сергей Кокшаров. Было доказано, что замена на приводит к проседанию позиций. А значит, нужно и важно использовать на странице.

Поэтому SEO-специалистам стоит прислушиваться к рекомендациям и не нарушать иерархию заголовков.

Важно: и — не одно и то же. Да, оба эти тега имеют похожие функции — рассказывают, о чем текст на странице, поэтому их могут путать. Основное различие между этими тегами заключается в том, что тайтл отображается в сниппете, соцсетях и вкладках браузера, а — только на самой странице в качестве заголовка текста. Также они должны различаться, так как выполняют разные роли — тайтл привлекает людей из выдачи, а — подтверждает, что люди оказались на нужной странице, и раскрывает суть контента.

9) — обеспечивает внутреннюю ссылочную структуру и навигацию по сайту

Тег задает «подвал» сайта или раздела.

Как правило, в теге содержатся имя автора, правовая информация, контактные данные (должны находиться внутри тега в ), ссылки на документы и страницы, переход на начало страницы, а также карта сайта. В HTML-коде может быть несколько тегов . Этот тег поддерживает универсальные атрибуты HTML и события.

Вот пример того, как выглядит HTML-код:

   

Футер

Автор: Дарья Иванова [email protected]">[email protected]

Вот как это выглядит на странице:

Футер

Приведенный выше пример — не типичный футер, который сразу приходит на ум, но такое можно часто встретить под различными статьями. На скриншоте ниже представлен заполненный ссылками футер на главной странице SE Ranking вместе с его HTML-кодом:

Футер сайта SE Ranking

В большинстве случаев футер одинаковый для всего сайта и предоставляет пользователям всю необходимую информацию.

Но чем футер полезен для SEO? Футер содержит ссылки — много ссылок, что очень важно для поисковой оптимизации, поскольку это обеспечивает четкую внутреннюю ссылочную структуру сайта. Поэтому убедитесь, что ссылки на все ваши важные страницы есть в футере, чтобы их не пропустили поисковики.

10) Много тегов замедляют работу страниц

Тег предназначен для разделения контента в HTML-коде. Он хранит все типы элементов HTML.

Уточню, тег — это блочный элемент, который предназначен для выделения фрагмента документа с целью изменения вида содержимого. Чтобы не описывать каждый раз внутри тега стиль, можно выделить его во внешнюю таблицу стилей и добавить атрибут class или id с именем селектора.

Вот как выглядит HTML-код:

      

The div tag

Заголовок в теге div

Текст в теге div.

Текст вне тега div.

После запуска кода вы увидите, что содержимое элемента div отделено от всего остального:

Содержимое элемента div

Тег может содержать два атрибута:

  • атрибут align определяет выравнивание элемента div на странице;
  • атрибут title добавляет всплывающую подсказку к содержимому.

Также для этого тега доступны универсальные атрибуты и события.

Для SEO размещение контента в тегах по сути не является проблемой, но наличие большого количества ненужного кода в HTML-документе может замедлить работу страницы, что приведет к проблемам с UX.

11) — объединяет связанный между собой контент

Все просто — тег задает раздел HTML-документа. Его применяют для блока новостей, контактной информации, глав текста, вкладок в диалоговом окне и много другого.

Важно: как правило, этот элемент имеет заголовок. Также можно вкладывать один элемент section внутрь другого. Для этого тега доступны глобальные атрибуты и события.

Вот как выглядит HTML-код:

 

Лондон

Лондон — столица Англии и Соединенного Королевства. В самом центре Лондона находится здание парламента — Вестминстерский дворец, а также знаменитая часовая башня Биг-Бен и Вестминстерское аббатство. На противоположном берегу Темзы расположено колесо обозрения, с которого открывается панорамный вид не только на южный берег, но и на весь город.

Запустив его, вы увидите:

Элемент section

Как вы можете видеть на скриншоте ниже, мы тоже используем элемент на нашем сайте, чтобы выделить различные части или разделы главной страницы:

Элемент section на сайте SE Ranking

Для SEO элемент похож на тег , но, хоть и кажется, что функция у них одинаковая, посылает более мощный сигнал поисковикам. Он сообщает им, что внутри тега заключена группа связанного между собой контента, например, раздел контактной информации.

12) — выделяет самостоятельный контент

Тег обозначает цельный и самостоятельный контент. Но, в отличие от , его можно вырезать из одного места и вставить в другое — например, на другой сайт — а смысл его содержимого при этом не потеряется. При чем сделать это можно за считанные минуты. Тег часто используют для статей и постов в блоге.

Например, ниже можно увидеть страницу с бесконечной прокруткой. Как только вы закончите читать одну статью, сразу же начнется другая.

Код страницы с бесконечной прокруткой

Тег упрощает поисковикам процесс определения новых статей или заметок в онлайн-изданиях. Таким образом, Google может уделять больше внимания контенту, заключенному в тег .

Также использование тегов сокращает использование тегов и делает HTML-код вашей страницы чище.

13) — создает боковые панели

Тег определяет блок сбоку страницы для размещения рубрик, ссылок на различные материалы, меток и другой информации. Такой блок часто называют сайдбаром или боковой панелью, он может содержать сноску, рекламу или другое.

Обычно содержимое элемента aside не имеет прямого отношения к контенту страницы. Подобно тегу , aside просто создает боковую панель и не стилизует ее. Но это можно сделать с помощью CSS. Для данного тега доступны универсальные атрибуты.

Вот как выглядит HTML-код для боковой панели на главной странице нашего блога:

Боковая панель на главной странице блога SE Ranking

Тег помогает поисковикам быстро получать ценную информацию о странице — об авторе, количестве просмотров и датах. Также этот тег можно использовать для создания дополнительного контента, который имеет отношение ко всей странице, а не к одной из статей в блоге. Это позволяет поисковикам анализировать окружение страницы, чтобы лучше понять как ее общую, так и более конкретную тему — и в конечном итоге ранжировать страницу по релевантным запросам.

14) vs : что предпочитают сеошники

Вы наверняка слышали о том, что многие сеошники недолюбливают сайты, написанные на фреймах — большинство из них родом из 90-х.

Если говорить о причине в двух словах — такие сайты сложно оптимизировать, индексируются они медленнее и не всегда правильно, еще у таких сайтов хватает проблем с юзабилити.

Как видите, это выглядит откровенно плохо, но если посмотреть на код, то все еще хуже — что создает на таких страницах много проблем.

Что же нужно знать о теге ?

Тег определяет свойства отдельного окна (фрейма) на странице. Он находится в контейнере , который делит страницу на отдельные области. По сути, каждая такая область — это отдельная веб-страница.

Сегодня эта технология считается устаревшей — обычные фреймы больше не поддерживаются в HTML5. Но многие технологии поддерживают , что позволяет вставлять фреймы в текстовые блоки на странице.

Тег зачастую используется для того, чтобы добавить на сайт интерактивные карты, виджеты, а также медиаконтент, например, видео из Youtube.

Мы тоже использовали тег , чтобы добавить на страницу SE Ranking видео из нашего YouTube-канала.

Использование тега iframe на сайте

Таким образом, тег дает вам возможность встраивать контент с другого сайта на свой собственный. Полезен ли он для SEO? Поскольку поисковики понимают, что контент iframe извлекается из другого ресурса, он не будет приносить никакой выгоды. Но все же лучше использовать этот тег, чем .

15) — определяет приоритетные страницы

Тег задает навигацию по сайту и указывает на самые важные его страницы.

В этой статье мы уже рассказывали о внутренних навигационных ссылках в разделах и . Так чем же отличается от них тег ? Его используют для создания блока с основной навигацией и помещают в него приоритетные линки. А еще тег , кроме ссылок, может содержать абзацы с текстом, заголовки и списки. Его часто используют для создания меню сайта.

Тег может встречаться несколько раз в HTML-документе. Но не переусердствуйте и не помечайте все ссылки элементом . И помните — нельзя вкладывать его в тег .

Вот как выглядит HTML-код:

   

Элемент nav

Элемент nav задает навигационные ссылки:

HTML | CSS | JavaScript | Python

Ниже вы можете увидеть, как выглядит HTML-код на опубликованной странице:

Элемент nav

Вот как работает тег, если его добавить в HTML-код сайта:

Тег nav в коде сайта

Для SEO ссылки, помеченные элементом , дают понять поисковикам, какие страницы вы считаете наиболее важными на своем сайте. А еще тег обеспечивает роботам быстрый и легкий доступ к этим страницам.

16) — помогает сделать сайт интерактивным

Основная цель тега — добавление JavaScript-кода в HTML-документ. Именно с помощью JavaScript создают интерактивные сайты, которые реагируют на ваши действия — например, выпадает меню при клике, добавляется лайк при нажатии на «сердечко» и многое другое. Без JavaScript сложно представить хороший сайт.

Тег может содержать ссылку на программу или ее текст на определенном языке кодировки, известном как оператор скрипта. Скрипты могут располагаться как на вашем сайте, так и во внешнем файле и связываться с любым HTML-документом.

Тег можно размещать в заголовке или теле HTML-документа в неограниченном количестве. В большинстве случаев местоположение скрипта никак не влияет на работу программы. Но скрипты, которые должны выполняться в первую очередь, обычно помещают в заголовок документа.

Вот как выглядит пример HTML-кода:

Нет смысла показывать вам, как этот код будет выглядеть в действии, потому что нет никакого контекста. Поэтому вот пример того, как мы использовали тег script, чтобы добавить виджет HelpCrunch на наш сайт:

Тег script в коде страницы

Прежде чем мы перейдем к особенностям обработки JavaScript поисковиками, ознакомьтесь с таблицей ниже. Она даст представление о том, как можно использовать внешние скрипты на своих страницах и какие атрибуты вам в этом помогут.

Атрибут Значение Описание
async async Указывает, что скрипт будет выполняться без ожидания загрузки страницы
defer defer Откладывает выполнение скрипта до тех пор, пока вся страница не будет загружена полностью
language JavaScript (последние версии HTML, XHTML и его альтернативы не используют этот атрибут) Определяет язык программирования, на котором написан скрипт
src URL Устанавливает URL скрипта из внешнего файла для импорта в текущий документ
type scripttype Определяет тип тега

Важно: если в скрипте нет атрибутов async или defer, он будет извлечен и выполнен без задержки, даже до того, как браузер прогрузит ресурс.

А еще стоит напомнить, что у поисковиков возникают проблемы с JavaScript. Его использование часто предполагает, что определенный контент появится на сайте только после действия пользователя, поэтому большинство поисковиков этот контент просто не увидит, а значит — не проиндексирует.

Пока только Google умеет обрабатывать JavaScript, поэтому, если вы хотите, чтобы ваш JavaScript-контент видели все поисковики, рекомендуем использовать динамический рендеринг или рендеринг на стороне сервера.

Как проверить, все ли ОК с тегами

Чтобы не допустить ошибок в тегах, которые могут повлиять на качество продвижения сайта, необходимо проводить аудит сайта. Можно сделать комплексный аудит сайта с помощью SE Ranking.

Детальный анализ вашего сайта покажет страницы с noindex и hreflang, rel=“canonical” и rel=“alternate”, проверит заголовки и теги на уникальность и соответствие ограничениям по длине, найдет все дубли и картинки с пустым alt, проанализирует ошибки в заголовках (h1-h6) и многое другое. В отчете будут указаны не только ошибки и замечания, но и пути их решения. Периодичность проведения аудита можно настроить самостоятельно, исходя из ваших потребностей и частоты изменений, которые вы вносите на сайт.

В этой статье мы описали не полный список тегов и атрибутов, а лишь те, с которыми чаще всего сталкивается сеошник в ежедневной рутине. Понимая важность каждого из перечисленных элементов, его структуру и роль на странице, вы сможете многое — определить ошибки в использовании тегов, написать правильное ТЗ для программиста и даже самостоятельно подправить код.

HTML-теги необязательно любить, но знать, какие из них важны для оптимизации сайта — нужно. Если вы хотите, чтобы поисковики высоко оценили ваши страницы, помогите им в этом, предоставив максимум полезной и релевантной информации в коде.

Элемент

Элемент предназначен для указания типа текущего документа — DTD (document type definition, описание типа документа). Это необходимо, чтобы браузер понимал, как следует интерпретировать текущую веб-страницу, поскольку HTML существует в нескольких версиях, кроме того, имеется XHTML (EXtensible HyperText Markup Language, расширенный язык разметки гипертекста), похожий на HTML, но различающийся с ним по синтаксису. Чтобы браузер «не путался» и понимал, согласно какому стандарту отображать веб-страницу и необходимо в первой строке кода задавать .

Существует несколько видов , они различаются в зависимости от версии языка, на которого ориентированы. В табл. 1. приведены основные типы документов с их описанием.

Табл. 1. Допустимые DTD

DOCTYPE Описание
HTML 4.01
Строгий синтаксис HTML.
Переходный синтаксис HTML.
В HTML-документе применяются фреймы.
HTML 5
Для всех документов.
XHTML 1.0
Строгий синтаксис XHTML.
Переходный синтаксис XHTML.
Документ написан на XHTML и содержит фреймы.
XHTML 1.1
Разработчики XHTML 1.1 предполагают, что он постепенно вытеснит HTML. Никакого деления на виды это определение не имеет, синтаксис один и подчиняется четким правилам.

Синтаксис

Параметры

Элемент верхнего уровня — указывает элемент верхнего уровня в документе, для HTML это тег .

Публичность — объект является публичным (значение PUBLIC ) или системным ресурсом (значение SYSTEM ), например, таким как локальный файл. Для HTML/XHTML указывается значение PUBLIC .

Регистрация — сообщает, что разработчик DTD зарегистрирован в международной организации по стандартизации (International Organization for Standardization, ISO). Принимает одно из двух значений: плюс (+) — разработчик зарегистрирован в ISO и — (минус) — разработчик не зарегистрирован. Для W3C значение ставится «-».

Организация — уникальное название организации, разработавшей DTD. Официально HTML/XHTML публикует W3C , это название и пишется в .

Тип — тип описываемого документа. Для HTML/XHTML значение указывается DTD .

Имя — уникальное имя документа для описания DTD.

Язык — язык, на котором написан текст для описания объекта. Содержит две буквы, пишется в верхнем регистре. Для документа HTML/XHTML указывается английский язык ( EN ).

URL — адрес документа с DTD.

Закрывающий тег

Пример 1. HTML 4.01

HTML 4.01 IE Cr Op Sa Fx

   !DOCTYPE  

Разум — это Будда, а прекращение умозрительного мышления — это путь. Перестав мыслить понятиями и размышлять о путях существования и небытия, о душе и плоти, о пассивном и активном и о других подобных вещах, начинаешь осознавать, что разум — это Будда, что Будда — это сущность разума, и что разум подобен бесконечности.

Пример 2. HTML 5

HTML5 IE Cr Op Sa Fx

   !DOCTYPE 

Разум — это Будда, а прекращение умозрительного мышления — это путь. Перестав мыслить понятиями и размышлять о путях существования и небытия, о душе и плоти, о пассивном и активном и о других подобных вещах, начинаешь осознавать, что разум — это Будда, что Будда — это сущность разума, и что разум подобен бесконечности.

Браузеры

Internet Explorer до версии 6.0 требует, чтобы стоял обязательно в первой строке кода. В противном случае браузер переходит в режим совместимости (quirk mode).

Хотя значение URL является не обязательным, браузеры при его отсутствии могут перейти в режим совместимости, поэтому всегда указывайте полный путь к DTD-файлу, как показано в табл. 1.

Статьи по теме

  • Атрибут target
  • Введение в HTML
  • Выравнивание элементов
  • Доктайп
  • Написание корректного кода
  • Почти стандартный режим
  • Пять вещей, которые надо знать об HTML5
  • Режим совместимости
  • Режимы браузеров
  • Рекомендации по доктайпу
  • Синтаксис HTML5
  • Синтаксис XHTML
  • Ссылка на новое окно
  • Стандартный режим
  • Структура HTML-кода
  • Структура XHTML-документа
  • Структура кода
  • Что всё это значит?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *