Содержание

Как проверить валидность HTML-разметки — Блог HTML Academy

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

Что это и зачем

Валидный HTML-код, валидная разметка — это HTML-код, который написан в соответствии с определёнными стандартами. Их разработал Консорциум Всемирной Паутины — World Wide Web Consortium (W3C). Что именно это значит?

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

Понятный код — меньше хлопот

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

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

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

Валидатор — это…

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

Как пользоваться валидатором

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

За вами выбор способа проверки. Можно проверять код по ссылке, можно загрузить в сервис HTML-файл, а можно фрагмент кода. В третьем варианте как раз и идёт речь о написанном в окне сервиса коде или скопированной части из разметки всей страницы.

Цепочка действий в два шага. Первый — предоставить исходный код, а второй — нажать на кнопку проверки.

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

Интерпретация результатов валидации

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

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

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

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

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

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

Список на память

  • Не стоит путать валидность с абсолютной правильностью.
  • Важна каждая запятая и закрывающая скобка, закрытый тег. Глазами это сложно усмотреть всё, поэтому валидатор и придумали.
  • Валидаторы проверяют синтаксис. Термин из филологии.
  • Редактор, в котором вы пишете код, также можно настроить так, что он будет автоматически закрывать открытые вами теги и сообщать об ошибках ещё до валидации — в процессе написания разметки.
  • Алгоритмы любят порядки. Чем лучше написан код страниц на сайте, тем выше сайт продвигается в релевантной выдаче.

Валидный код — гордость верстальщика

Пройдите курсы по вёрстке, чтобы вами гордились все знакомые. 11 глав по HTML, CSS и JavaScript бесплатно.

Регистрация

Нажатие на кнопку — согласие на обработку персональных данных

Обсуждение статьи, вопросы авторам, опечатки и предложения — в телеграм-чате HTML Academy.

Проверка данных на валидность | htmlbook.ru

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

validator.w3.org

По адресу http://validator.w3.org располагается, пожалуй, самый распространенный инструмент для проверки отдельных страниц на валидность. Этот сайт предлагает три способа проверки: по адресу, локального файла и введенного в форму кода.

Проверка по адресу

Если ваш сайт уже опубликован в Интернете, то любую страницу можно проверить, вводя в текстовое поле ее адрес (рис. 14.1).

Рис. 14.1. Форма для ввода адреса документа

Так, вводя http://htmlbook.ru в форме «Validate by URI» (валидация по адресу) и нажав кнопку (проверить) получим сообщение о том, валидный документ или нет.

Хотя в текстовом поле вводится адрес сайта, проверяется не сайт целиком, а только одна главная страница. Учтите, что, к примеру, адрес http://htmlbook.ru равнозначен вводу http://htmlbook.ru/index.php.

Валидатор проверяет HTML-код страницы и в случае отсутствия ошибок докладывает о валидности документа (рис. 14.2).

Рис. 14.2. Отчет о проверке и валидности веб-страницы

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

Рис. 14.3. Отчет о проверке и вывод ошибок

Проверка локальных файлов

Документы, еще не выставленные в Интернете, можно проверить с помощью формы, озаглавленной «Validate by File Upload» (валидация загруженных файлов), как показано на рис. 14.4.

Рис. 14.4. Форма ввода пути к локальному файлу для его проверки

Вначале следует указать путь к HTML-файлу, после чего нажать кнопку . Файл будет загружен на сервер и проверен на ошибки.

Использование формы для ввода кода

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

Рис. 14.5. Форма для ввода HTML-кода

Расширение HTML Validator для браузера Firefox

Популярность браузера Firefox обусловлена наличием для него большого количества разнообразных расширений — программ, которые добавляют новые возможности в браузер. Расширения построены по открытой технологии и написать их может любой разработчик. Не оставлены без внимания и веб-разрабочики — для их удобства создано множество расширений, в том числе и для валидации документа прямо в браузере. В данном случае нас интересует HTML Validator. Эта программа построена по той же технологии, что и валидатор W3C, но не требует подключения к Интернету и работает прямо «на лету».

Где скачать
http://users.skynet.be/mgueury/mozilla/

Установка расширения

После скачивания файла установить расширение можно несколькими способами.

1. Через менеджер расширений

Запустите Firefox и откройте меню . Перетащите мышью загруженный файл (он имеет расширение xpi) в открывшееся окно. Далее расширение будет установлено автоматически.

2. С помощью открытия файла

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

3. Копирование файла в папку extension

Откройте папку на диске, где установлен Firefox (к примеру c:\Program Files\Mozilla Firefox) и найдите в ней подпапку extension, в которую скопируйте расширение. После запуска браузера дальнейшая установка пройдет самостоятельно.

Все приведенные методы установки требуют перезагрузки браузера после установки расширения. Работа HTML Validator начинается сразу же после повторного запуска Firefox.

Если указанные способы по каким-либо причинам не помогли, вы можете обратиться на сайт поддержки браузера Mozilla Firefox и прочитать обо всех возможных методах установки расширений по адресу
http://forum.mozilla-russia.org/doku.php?id=general:extensions_installing

Использование HTML Validator

При открытии веб-страницы HTML Validator начинает сразу же свою работу, и результат проверки отображается в строке состояния, в ее правом нижнем углу в виде небольшой картинки. Изображение зависит от статуса проверки и показано на рис. 14.6.

Рис. 14.6. Виды картинок, отображаемых при проверке документа

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

Просмотреть все ошибки можно двояко. Во-первых, заглянуть в HTML-код документа через меню или щелкнуть правой кнопкой и в контекстном меню выбрать (рис. 14.7).

Рис. 14.7. Контекстное меню с пунктом выбора исходного кода

Окно исходного кода веб-страницы разделено на три части (рис. 14.8), где верхний блок содержит собственно HTML-код. В левом нижнем блоке отображается список ошибок и замечаний или информационные сообщения в случае валидного документа. Правый нижний блок предназначен для подробных подсказок о текущих замечаниях.

Рис. 14.8. Результат работы расширения HTML Validator

Валидность HTML-кода сайта, стандарты W3C

Валидность HTML-кода – соответствие кода сайта стандартам, описанным Консоциумом Всемирной Паутины (W3C).

Несмотря на то что некоторые разработчики заявляют, что валидность кода – вещь второстепенная, и главное, чтобы просто сайт работал, код, написанный по всем правилам и его периодическая проверка, обладает рядом преимуществ:

  • Хорошая кроссбраузерность – сайт без проблем отображается в разных браузерах, в том числе десктопных и мобильных версиях,

  • Высокая скорость загрузки сайта,

  • Корректность представляемой информации, форм, работа важных элементов сайта, например, кнопки «Купить» и т.д.

  • Сканирование сайта роботами поисковых систем,

  • Выявление скрытой рекламы или вредоносного кода на сайте.

Как проверить валидность HTML-кода

Проверка HTML-кода сайта на валидность осуществляется с помощью специального инструмента от W3C https://validator.w3.org/ Проверить код можно, указав URL сайта, загрузив часть кода или файл с ним.

HTML-валидатор произведет несколько проверок загруженного кода, например:

  • Валидация синтаксиса — проверка на наличие синтаксических ошибок.

  • Проверка вложенности тегов

  • Валидация DTD — проверка соответствия кода указанному Document Type Definition. Она включает проверку названий тегов, атрибутов, и встраивания тегов.

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

Сервис поддерживает IDN-домены и для их проверки не требуется переводить имя домена в Punycode.

Отчет, который предоставляет валидатор от W3C, содержит:

  • Список ошибок и предупреждений, с указанием критичности,

  • Строка тега с ошибкой,

  • Рекомендации по исправлению.

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

Оптимизация кода страниц для SEO

Ниже приведены базовые рекомендации по HTML-верстке страниц, которые оценят поисковые роботы:

  • Теги Title, Description и Keywords следует располагать сразу после открывающегося тега head,
  • CSS-стили и Java-скрипты необходимо выносить в отдельные файлы с расширением .css и .js. В противном случае технический код будет увеличивать объем страницы и негативно влиять на скорость ее загрузки.
  • Весь ненужный код – счетчики статистики (liveinternet, rambler top100, bigmir и т.п.), формы голосований и опросов, отправки заявки или поиска товара, логин-панель — следует закрыть от индексации.
  • Важно удалять из исходного кода комментарии верстальщиков к разным элементам, т.к. это увеличивает объем страницы и увеличивает скорость ее загрузки.
  • Из кода необходимо удалять все скрытые от поисковых систем средствами CSS-форматирования элементы. К наиболее часто встречающимся элементам этой категории относятся «display:none» и «visibility:hidden».
  • Прописывать атрибут alt для всех изображений
  • Правильно формировать парные теги – если тег был открыт, его обязательно нужно закрыть.
  • Устаревшие теги, которые уже не поддерживаются, следует исключить из кода, заменив на универсальный тег div. Примеры таких тегов: applet, acronym, bgsound, dir, frame, frameset, noframe, isindex, listing, xmp, nextid, noembed, plaintext, rb, strike, basefont, big, blink, center, font, marquee, multicol, nobr, spacer, tt, u.
  • Для атрибутов ширины и высоты в элементе img нужно указывать только цифры без «px»
  • Корректный конструкция тега noindex выглядит следующим образом: <!–noindex–>Текст или код, который нужно исключить из индексации<!–/noindex–>. Не следует использовать конструкцию [noindex]Текст или код, который нужно исключить из индексации[/noindex].

Как проверить сайт на ошибки в коде HTML и CSS

Существует такое понятие, как валидация или валидность кода. Валидация — это процесс тестирования кода на отсутствие ошибок. Код, который не содержит ошибок, называется валидным. Даже неправильно говорить «не имеет ошибок», скорее верно будет сказать «код, который не противоречит текущим стандартам W3C». Проверить HTML на ошибки можно с помощью сервиса:

validator.w3.org

Проверить CSS на ошибки можно при помощи сервиса:

jigsaw.w3.org/css-validator/

При осуществлении вёрстки каждому вебмастеру приходит в голову проверить свой сайт на правильность кода, валидность. Но большинство сайтов (даже самых популярных), если проверить их код на валидность, содержат ошибки. Давайте разберемся, с чем это связано.

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

Валидность и SEO

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

Правильно-невалидный код

Но, как уже отмечалось выше, бывает правильный невалидный код. Ярким примером этого являются CSS-хаки (т.е. такие свойства, которые меняют отображение нужного элемента в различных браузерах). Они очень часто являются невалидными. Конечно, можно отказаться от использования таких хаков, но, как правило, валидный код будет значительно длиннее и сложнее, поэтому в таких случаях оптимальнее выбрать использование хаков, вместо погони за валидностью. Как правило, такой код не приносит вреда и обнаруживается только при проверке с помощью валидатора.

Валидация сайта

Сегодняшнюю статью я хочу посвятить валидации сайта (то есть HTML). Сперва определим что означает этот термин! Валидация сайта — это проверка синтаксических ошибок, проверка вложенности тэгов и другие критерии. Как правило, валидаторы (сервисы для проверки сайтов на наличие ошибок в структуре документа) проверяют HTML-код на соответствие определенному стандарту, который указан в самом начале любой HTML-страницы первой строчкой. Если вы не знали для чего она, теперь будете знать! 🙂 Но для чего, собственно, нужна эта самая валидация и на что она влияет?

Что такое валидация сайта?

Как я уже говорил выше, валидация — это соответствие HTML-кода определенным правилам и стандартам. На смену XHTML пришла технология HTML5, которая значительно облегчила жизнь разработчикам. Дело в том, что в версии XHTML синтаксис был очень строгим. Если в HTML5 вы можете писать тэг переноса <br> как без наклонной черты, так в таком виде <br />, то в XHTML будет верным только последний вариант. HTML5 не так строг, да и к тому же появилось множество полезных тегов, но не об этом сейчас 🙂 .

На что влияет валидация сайта?

А сейчас ответим на второй вопрос.

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

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

Ну что, я вас убедил в том, что валидация сайта действительно необходима? Тогда с теорией закончили и переходим к практике!

Как узнать, почему позиции сайта не растут?

Закажите полный разбор сайта по SEO + консультацию

Сделайте аудит своего сайта самостоятельно с помощью сервиса

Способы проверки валидации

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

1 способ. Сервис validator.w3.org

Суть первого способа состоит в использовании сервиса для проверки валидности сайта. Как проверить валидность сайта с помощью сервиса validator.w3.org:

1. Переходим по адресу: validator.w3.org. Перед нами откроется страница, на которой есть 3 вкладки. На первой вкладке «Validate by URI» вы можете проверить валидность сайта размещенного в интернет, на второй «Validate by File Upload» — загрузить файл с компьютера, и на третьей «Validate by Direct Input» — вставить содержимое файла непосредственно в форму для ввода. Я буду рассказывать о первом варианте, то есть когда сайт размещен в интернет (думаю и с другими способами у вас проблем не возникнет). Поэтому выбираем первую вкладку как на изображении ниже:

2. Далее нажимаем на кнопку «More options» и здесь необходимо выставить следующие значения:

  • Character Encoding — кодировку вашего сайта. НО! Если она уже есть между тегами <head> (у себя на сайте в браузере нажимаете на сочетание клавиш CTRL+U, и ищете в начале документа примерно такую строку
    1
    
    <meta charset="UTF-8" />

    ), то здесь оставляем выбранным (detect automatically).

  • Document Type — тип текущего документа. Он указывается первой строкой в HTML (когда находитесь на своем сайте, в браузере нажимаете сочетание клавиш CTRL+U, и смотрите самую первую строчку

    ). Если же в первой строчке присутствует что-то похожее, тогда и здесь оставляйте значение (detect automatically).

Если у вас что-то из того, что я описал выше нету, тогда вам самостоятельно необходимо будет выставить эти значения. Я здесь ничего не менял и оставил всё как есть.

3. Затем в поле «Address» вводим адрес вашего сайта как сделал я:

После чего нажимаем на кнопку «Check», которая расположена по середине серого блока:

4. Далее идет валидация вашего сайта и через некоторое время появится результат валидации. Будет похожая страница с сообщением «This document was successfully checked as HTML5!» (что значит что ваш сайт успешно прошел проверку на валидность определенному типу документа, то есть в моем случае HTML5):

Если у вас надпись на красном фоне — это значит что у вас присутствуют ошибки в вашем HTML-документе. Их необходимо исправить. Для этого просто выделяете название ошибки (в видео я всё это показываю как делать) и вставляете ее, например, в Google. Далее просто читаете как с этой ошибкой боролись другие веб-мастера и исправляете ее следуя этим советам. Также у вас есть другой выход — поручить это дело знающему человеку, который разбирается в коде, и пусть он это сделает за вас.

Для тех, кто не понял или поленился почитать — смотрите видео ниже 🙂

Как узнать технические ошибки сайта?

Закажите полный разбор сайта по SEO + консультацию

Сделайте аудит своего сайта самостоятельно с помощью сервиса

2 способ. Плагины для браузеров

1. Плагин для браузера Mozilla Firefox — Перейти

Переходите по ссылке выше, выбираете версию браузера Firefox и нажимаете на кнопку «Download». Затем выбираете необходимую операционную систему и устанавливаете как обычное дополнение. (те, кто не понял, смотрите видео 🙂 )

2. Плагин для браузера Google Chrome — Перейти

Здесь вам необходимо нажать на кнопку «Бесплатно» и затем во всплывающем окошке нажать «Добавить».

3. Плагин для браузера Opera — Перейти

Здесь также происходит обычная установка дополнения.

4. Плагин для браузера Safari — Перейти

Установка:

  1. Распакуйте архив с плагином.
  2. Скопируйте файл «Safari Validator.webplugin» в папку, где установлен браузер, затем /Library/Internet Plug-Ins (создайте папку, если она отсутствует)
  3. Сделайте двойной клик на файле Safari Validator.safariextz.
  4. Перезапустить браузер Safari.

Как установить плагин в Firefox и как пользоваться им я рассказываю во втором видео:

Вывод

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

Успехов!

С Уважением, Юрий Немец

Проверка на валидность | GeekBrains

Что такое валидность, как её проверять и зачем всё это нужно.

https://d2xzmw6cctk25h.cloudfront.net/post/350/og_cover_image/f8e8e5c0628a040fb16df46a4b1d14c1

источник изображения http://habrahabr.ru/

Как узнать, грамотно ли вы написали код? Будет ли ваш сайт корректно отображаться в разных браузерах? Не пойдет ли всё наперекосяк из-за нелепой опечатки или незакрытого тега? Если сайт или проект небольшой, это обычно видно с первого взгляда на код, но если это не так или человек не имеет достаточного опыта в разработке? 

Проверка на валидность

Проверка на валидность — проверка на соответствие написанного кода определенному стандарту. Как товары или продукты проверяются на соответствие ГОСТ или ТУ, так и сайт проверяется на соответствие установленным стандартам.

Для чего нужна проверка на валидность

SEO-оптимизация: от корректности кода зависит понимание вашего сайта поисковыми роботами.

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

Проверка на вложенность и закрытость тегов: часто встречаются незакрытые или неправильно закрытые теги  (например, вложенность <div>)

Валидатор — штука довольно строгая, и отлавливает даже те ошибки и недочёты, с которыми ваш сайт работает во всех браузерах. Однако валидация для HTML5 более мягкая, чем для HTML4, т.к. позволяет использовать пользовательские элементы, начинающиеся с data.

Проверять или нет

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

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

Иногда проверка на валидность помогает отловить скрытую рекламу и вредоносный код.

Хотите научиться писать валидный код? Тогда приглашаем на бесплатный интенсив по основам программирования!

Чем проверять

HTML-валидатор W3C здесь. С помощью сервиса можно проверить код как по URL, так и загрузив кусок кода или полностью файл.


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

Css-валидатор проверяет таблицу стилей вашего сайта. Валидатор от W3C здесь. Логика работы идентична html-валидатору.

Ещё на валидность принято проверять ленты RSS и Atom. Сервис проверки.

Как исправлять ошибки

С одной стороны это не так и сложно, потому как в отчёте видна критичность ошибки, место с указанием строки тега, в котором ошибка замечена и рекомендации по её исправлению. Другое дело, что для того, чтобы исправить ошибку надо знать, как её исправлять, понимать, в чём заключается ошибка — уметь читать код и разбираться в нём. Сервис ошибку за вас не исправит, это придётся делать самому. Поэтому необходимы минимальные знания HTML и CSS, которые в т.ч. можно получить на соответствующих курсах HTML/CSS «Основы создания сайтов» и «HTML5 и CSS3 и Современные средства Web-разработки».

Тем, кто хочет стать программистом, рекомендуем профессию «Веб-разработчик».

Валидация контента сайта по W3C

Что такое валидация html кода?

Html, как известно, язык разметки, который является основой для подавляющего большинства страниц в интернете. Как у любого другого языка, у html есть правила написания — синтаксис. Валидный html-код это код, который соответствует всем рекомендациям написания кода — спецификации.

Спецификации. Что это?

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

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

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

Cколько спецификаций существует.

Начиная с HTML5, разработчики и производители браузеров могут выбирать между двумя разновидностями одного и того же языка разметки: спецификациями, разработанными консорциумом W3C, и тех, что разработаны WHATWG.

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

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

Если HTML-спецификации W3C и WHATWG различаются, то мы стараемся следовать спецификации WHATWG.

Зачем нужна валидация?

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

Разбор ошибок на примере главной страницы сайта Клондайка.

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

Как проверить HTML код на валидность? Для проверки валидации нашего HTML5 кода используем известный HTML Validator для проверки соответствия кода w3c стандартам. Не смотря на то, что не все HTML ошибки приведут к проблемам поискового ранжирования, некоторые из них могут затруднить поисковым системам успешно индексировать страницы и могут испортить все ваши SEO усилия.

Переходим на сайт валидатора от W3C , выбираем вкладку «Validate by URL», в поле «Address» вставляем адрес проверяемого сайта и жмем кнопку «Check».

Через пару секунд получаем результат проверки.

В нашем случае было обнаружено 36 ошибок.

Рассмотрим каждую ошибку по отдельности.

Как мы сразу видим, валидатор показывает что на нашей главной странице присутствует сразу 24 однотипных ошибки — у нас не проставлен атрибут alt у картинок.

Смотрим исходный код сайта:

Действительно, у картинок не прописан атрибут alt.

Зачем нужен этот атрибут? Когда загружается страница, вначале загружается текст из атрибута alt, а уже после идёт смена текста на изображение. Если в браузере отключена загрузка изображений, то на месте изображения будет альтернативный текст (из атрибута alt).

Что ж, приступим к исправлению. Для каждой картинки мы пропишем соответствующий ей атрибут alt.

Далее убираем лишний закрывающий тег </section>

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

Этот тег использован у слов которые пишутся через дефис. По правилам русского языка, такие слова не следует разрывать переносом на другую строку, если слово целиком не умещается на предыдущей строке. На мобильных устройствах очень большая вероятность что такие слова будут перенесены из-за небольших размеров экранов. Поэтому, ради соответствия правилам русского языка и грамотного отображения контента, мы пожертвуем 100% валидацией и оставим тег <nobr> в коде страницы.

Переходим к следующей ошибке

Смотрим исходный код и находим искомое место:


<input type="submit" value="OK" name="OK" value="Подписаться">

Идем в шаблон компонента, находим:


<input type="submit" value="OK" name="OK" value="<?=GetMessage("subscr_form_button")?>">

Удаляем лишнее value="<?=GetMessage("subscr_form_button")?>" и у нас остается:


<input type="submit" value="OK" name="OK">

Далее смотрим- валидатор обращает наше внимание на том, что тегу <nav> не обязательно прописывать атрибут role.

Однако это не является ошибкой, поэтому не будем трогать.

Отсутствие заголовка внутри тега <section> тоже не является ошибкой, поэтому дабы не сломать шаблон, не станем лезть в него и править то, что валидатор W3C HTML5 не указал как Error.

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


<link href='http://fonts.googleapis.com/css?family=PT+Sans:400,700&subset=latin,cyrillic' rel='stylesheet' type='text/css'>

то увидим что делать нам этого никак нельзя. Поэтому просто игнорим это и идем дальше.

В этому случае валидатор ругается на атрибуты width и height для тега <a>.

Смотрим исходный код:

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

У нас остался один не исправленный, или хотя бы не разобранный пункт — не прописан alt у очередной картинки.

Лезем в исходный код и видим что это код Яндекс.Метрики.

Ок. Сюда нам тоже лезть не с руки, ибо такой код генерирует сам Яндекс.

Вот мы и прошлись по всем ошибкам которые нам показал валидатор W3C HTML5. Что мной было уяснено в ходе написания этой статьи:

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

Ну и на последок проверим на соответствие рекомендациям спецификации HTML5 по W3C несколько популярных сайтов:

12 надежных способов проверки подлинности веб-сайтов | API категоризации веб-сайтов