MaxTarget

Насколько важна валидность HTML и CSS

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

Валидный код

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

Логотип W3CВ прошлом году я уделил в своих публикациях достаточно много внимания такому термину как валидность, пришло время разобраться какие есть преимущества у валидного HTML. Ранее вместе с Вами мы разобрали как проверить на валидность HTML, CSS, а также RSS каналы и еще несколько интересных моментов.

Четыре основных фактора в пользу валидного сайта

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

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

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

Если внимательно изучить данный документ, то в пункте 3 «Верстка» изложено следующее:

Старайтесь, чтобы верстка страниц соответствовала стандартам

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

И, наконец, в-четвертых, не самую последнюю роль играет психологический фактор. Приятно осознавать, что проделанная работа соответствует определенные критериям и стандартам, в нашем случае стандартам Консорциума Всемирной паутины. А как известно, психология — великая вещь! Так что не стоит ее игнорировать.

Успешно!

Эх, так приятно видеть такую надпись 😉

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

  1. BloggerMen

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

    Ответить

  2. Алексей

    Валидность не равно кроссбраузерность, даже в современных браузерах.

    Ответить

  3. Webliberty

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

    Ответить

  4. Ольга

    20 ошибок… Хм, я ожидала значительно большего количества. Приятно, будем работать дальше 🙂
    Валидация, безусловно важна. А заказчики последнее время даже стали указывать кроссбраузерность отдельным пунктом в ТЗ.

    Ответить

  5. Webliberty

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

    Ответить

  6. Алексей

    Ольга, как давно вы верстаете? Кроссбраузерность, читай одинаковое отображение во всех (дай бог чтобы только современных) браузерах сверстанного макета всегда было требованием от заказчиков.

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

    Я тоже с этим согласен, но в этом случае ваш первый пункт можно вычеркивать 😉

    Ответить

  7. Webliberty

    Алексей, а разве есть вероятность того, что страницы с валидным кодом будут «кривыми» в одном из браузеров? 💡

    Ответить

  8. concrete5russia

    Webliberty, есть и иногда даже очень велика 😉 Пример: в каждом браузере есть фиксированные padding и margin, установленные по умолчанию для некоторых элементов, например к body некоторые браузеры добавляют несколько пикселей со всех сторон к свойству margin (в разных браузерах количество добавленных пикселей разное), то же касается элемента параграфа p.

    Если не сбросить в самом начале все padding и margin до нуля у всех элементов или же просто напросто у всех элементов в css вручную не указывать эти свойства, то сайт может отобразиться коряво и придется его налаживать. Например если у вашего блога в css для элемента body убрать строчку margin:0; то сайт съедет вниз пикселей на 5, в других браузерах может съехать на 3 или вообще отобразиться без корявости 🙂

    Ответить

  9. Webliberty

    concrete5russia, большое спасибо, не знал что у браузеров есть свои параметры для некоторых элементов, теперь буду знать 🙂 А эти параметры применяются только в том случае, если они не заданы при верстке шаблона? Или принудительно применяются к элементам?

    Ответить

  10. concrete5russia

    Webliberty, если в CSS их не прописать, то они задаются по умолчанию где-то внутри браузеров, но если вы укажете в CSS определенные margin и padding, то значения, которые были по умолчанию как бы сбросятся и будут применены Ваши цифры. Самый простой способ — это написать в css строчку:

    1
    
    * {margin:0; padding:0;}

    То есть для всех элементов на странице отступы и поля сбросить на 0. Я могу много написать тут про эти стили, но легче для справки просто зайти в гугл и ввести: «стандартные стили браузера» или просто «стили браузера». А для того, чтобы узнать как сбрасывают стили браузера поищите «сброс стандартных стилей» 🙂

    Ответить

  11. Webliberty

    concrete5russia, обязательно посмотрю. А Вы по всей видимости разработчик или верстальщик, раз так хорошо разбираетесь?

    Ответить

  12. concrete5russia

    Я верстальщик + разработчик 🙂 Только дизайнерских способностей нет, всё остальное присутствует.

    Ответить

  13. Олег

    concrete5russia пишет:

    Я верстальщик + разработчик 🙂 Только дизайнерских способностей нет, всё остальное присутствует.

    Подскажите как мне решить проблему с сайтом. При проверке на сайте validator.w3.org в доктайпе XHTML 1.0 Strict у меня выдаёт 279 Errors, 26 warning(s), а в доктайпе HTML5 выдаёт 3 Errors, 4 warning(s), но HTML5 там в экспериментальном режиме. Как быть? Как правильно прописать строку доктайп в коде?

    Ответить

  14. Webliberty

    Олег, для HTML5 тип документа выглядит следующим образом:

    1
    
    <!DOCTYPE HTML>

    Ответить

  15. concrete5russia

    Олег, я думаю пока что рано применять доктайп HTML5, потому что абсолютное большинство пользователей используют версии браузеров, не поддерживающих HTML5 (да что уж говорить, если есть люди, которые до сих пор IE6 используют). Делайте сайт с типом документа XHTML 1.0 Transitional, исправьте наиболее грубые ошибки — alt у картинок не везде прописаны у вас, все теги должны состоять из маленьких букв, все параметры в тегах тоже из маленьких букв, значения параметров должны быть в кавычках.

    Ответить

  16. Олег

    Спасибо за ответы! Буду разбираться.

    Ответить

  17. Ренат

    Подскажите пожалуйста, если кто знает влияют ли предупреждения CCS на продвижение сайта и можно как-то от них избавиться? Предупреждение: Одинаковые цвета для текста и фона используются в следующих местах: .header и #autoXML

    1
    2
    3
    4
    5
    6
    
    .header {
    	background:#d60000;
    	padding:22px 0 0 0;
    	color:#000000;
    	background-color:transparent;
    }

    Если исправляю это, то выходит следующее предупреждение при полном отчёте валидатора: Вы не указали цвет фона background-color (или background-color установлен прозрачным), но задали цвет color. Убедитесь, что последовательность цветов сохраняет текст читаемым.

    1
    2
    3
    4
    5
    6
    
    .header {
    	background:#d60000;
    	padding:22px 0 0 0;
    	color:#000000;
    	background-color:transparent;
    }

    Ответить

  18. Webliberty

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

    Задайте для .header и #autoXML разные цвета (чтобы фон и цвет текста не совпадали), ссылку на свой сайт Вы не оставили, поэтому трудно оценить и посоветовать.

    Ответить

  19. Ренат

    В том то и дело что цвета разные

    1
    2
    3
    4
    5
    
    .header {
    	background:#d60000;
    	padding:22px 0 0 0;
    	color:#000000;
    }

    И что это такое, откуда берётся для меня так же загадка #autoXML

    Ответить

  20. Webliberty

    Имеется в виду что в классе .header с фоном #d60000 находится элемент #autoXML с таким же цветом текста #d60000

    Решение: определить что такое #autoXML и задать для него цвет текста отличный от #d60000. Т.к. в исходном коде CSS я не нашел этого id, то могу предположить, что его создает движок Вашего сайта. Что за движок я так и не понял, поинтересуйтесь у кого аналогичный.

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

    Ответить

  21. Станислав

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

    Ответить

  22. Webliberty

    Станислав, да, зачастую именно в этом и кроется причина…

    Ответить

  23. Sergei Ivanzov

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

    Ответить

  24. Webliberty

    Sergei Ivanzov, не обязателен, это точно. Но согласитесь, самому приятно осознавать что все правильно, да и интересно)

    Ответить

  25. RMAx

    Кстати, исправился. Городские новости веду на WordPress. Один из косяков по валидации дает сам WP — в проверке логина. Остальное подправил. Ошибок больше нет.

    А про обязательность/необязательность валидации — просто у поисковиков есть какой-то лимит ошибок. Они и смотрят, кого в первую очередь обрабатывать. У нас, кстати, есть городской портал с огромной посещаемостью, но валидацию не проходит в принципе. Потому, даже при такой посещаемости, тИЦ всего 40, а PR — 4… Валидатор даже не пишет, какие ошибки. Просто офигевает от этого. На самом деле — не UTF символы (при кодировке UTF). На этом проверка завершается. Впрочем, там я глазами глянул. Ужаснулся. А ведь обычный ВордПресс…

    Ответить

  26. Webliberty

    RMAx, я встречался с ошибкой во время проверки валидности, например с таким текстом:

    «Sorry! This document cannot be checked. Sorry, I am unable to validate this document because on line 1597 it contained one or more bytes that I cannot interpret as utf-8 (in other words, the bytes found are not valid values in the specified Character Encoding). Please check both the content of the file and the character encoding indication.»

    Это не означает что проблема очень велика и волноваться не стоит. К тому же, когда проводил обзор сервисов по проверке валидности HTML и CSS, то обращал внимание на то что у Яндекса (а именно его я приводил в примере) ошибки присутствуют, однако все нормально функционирует. Тоже самое касается и других сайтов.

    Ответить

  27. John

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

    Ответить

  28. Webliberty

    John, а ПС поступают просто — они рекомендуют придерживаться правил, но сами их в большинстве случаев не придерживаются. Самое главное, чтобы не было критических ошибок, которые способны повлиять на отображение контента, а остальное — мелочи.

    Ответить

  29. Константин

    Психологически может и важно но на самом деле нет. Прогоните через валидаторы разные известные сайты, да тот же VKontakte, и увидите кучу ошибок CSS и HTML и что? Главное самому взять и проверить свой сайт в разных браузерах, чтобы не было косяков разных с тенями, цветами и т.д. Где-то читал про бан за ошибки валидности, так это вообще смешно, писать то надо что-то в блогах вот и пишут страшилки для зеленых 😀

    Ответить

  30. Webliberty

    Константин, я полностью с Вами согласен! Когда я разбирал на примерах проверку HTML и CSS, то для примера выбирал сайт Яндекса и не случайно каждый раз подчеркивал, что ошибки присутствуют даже у него, впрочем как и у многих крупных сайтов.

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

    Ответить

  31. Маргарита

    Денис, и насколько эти ошибки «смертельны»? У меня 30-50 штук нашлось. И что значит, если говорят, что закрывающие теги > неправильные, если визуально — все на месте? И кто занимается исправлением этих ошибок? Я сама в этом точно не разберусь?))

    Ответить

  32. Макс

    Я специально проверил как показало что все ошибки создают или счетчики с поисковиков, или сам вордпресс, формы подписок, и прочая хрень как правило очень коряво сделана, а мне лень подправлять )

    Ответить

  33. CMSONY

    Сделал свой сайт валидным по HTML причем в жестких рамках XHTML 1.1 и по CSS. Да пришлось потратить на это один день, но я не жалею 🙂

    Ответить

  34. Александр

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

    End tag for element «script» which is not open
    /mootools-1.2.5-core-yc.js» />

    И там где подчеркивает красным этот знак >. Вроде все правильно написано, но в что ему не угодило не пойму. Может какие-то новые правила введены или что, но для меня остается загадкой.

    Ответить

  35. Webliberty

    Александр, ничего нового не появилось. Тег <script> не является самозакрывающимся, поэтому в приведенном примере слеш в указанном месте не требуется, его роль выполняет </script>.

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

    1
    
    <script src="/mootools-1.2.5-core-yc.js"></script>

    Ответить

  36. Александр

    Webliberty, валидатор сначала ругался что нет слеша, я поставил слеш, теперь он ругается на кавычку > после слеша и на кавычку в закрывающим теге.
    Ладно, фиг с ним с этим валидатором. Благодарю за ответ.

    Ответить

Ваш комментарий:

:) ;) :D :( :cry: :| :o :P 8-) :oops: :roll: :idea: