Интересная ситуация сложилась в области разработки веб-сайтов. С одной стороны международный консорциум W3C разрабатывает стандарты описания веб-страниц, а с другой – производители браузеров и разработчики сайтов игнорируют эти рекомендации. Вряд ли найдется другая область деятельности, где производители при выпуске продукции противоречат международным спецификациям и гордятся этим. Следует отметить, что производители браузеров постепенно улучшают поддержку стандартов в своих продуктах. Фирма Microsoft, занимающая наибольшую долю рынка со своей программой Internet Explorer, в седьмой версии обеспечила более-менее приемлемую поддержку стандартов. Альтернативные производители добились еще лучшей поддержки рекомендаций W3C в своих браузерах. Вместе с тем разработчики веб-сайтов не только не хотят привести свои творения в соответствие со стандартами, но и активно пропагандируют разработку без учета стандартов. Проведем небольшое исследование, чтобы выяснить, как сильно идеология создания сайтов без учета рекомендаций W3C внедрилась в умы разработчиков. Возьмем рейтинг TOP-100 ведущих веб-студий Рунета 2007, в котором опубликованы ссылки на сайты сотни лучших отечественных студий, занимающихся разработкой веб-сайтов. Проверим с помощью сервиса http://validator.
w3.org/ соответствие стандартам главных страниц сайтов этих студий (выполним валидацию страниц). Как вы думаете, сколько студий прошло эту проверку? Всего восемь! Получается, что 92% веб-студий даже на главной странице своего сайта игнорируют стандарты. При этом лидеры ведут себя особо цинично. Студия Артемия Лебедева на своем сайте передает при попытке валидации сообщение: “Лучший валидатор – это браузер”. То есть, программа с множеством ошибок и недоработок, которую сам производитель меняет на более новую версию, для этой студии является эталоном в области проверки соответствия стандартам.
Вы думаете, что хотя бы 8% студий следует стандартам? Продолжим исследования, чтобы проверить это. Проверим случайно взятые пару страниц с сайтов восьми студий, главные страницы которых прошли проверку на соответствие стандартам. Половина сайтов не выдержала этот этап проверки – правильными на них являются только некоторые страницы. Из оставшихся четырех два сайта состоят из одной или двух простейших страниц, на которых просто трудно сделать что-то нестандартное.
И только две веб-студии создали полноценные сайты, соответствующие стандартам. Но мы продолжим наше исследование. Выберем случайным образом в портфолио четырех студий (две из которых на своем сайте разместили простейшие страницы), не замеченных в несоблюдении стандартов, пару работ. Проверив эти сайты клиентов веб-студий на валидность, можно обнаружить несоответствие их стандартам. В итоге можно сделать вывод – из сотни ведущих веб-студий Рунета нет ни одной, следующей рекомендациям W3C и соблюдающей стандарты при разработке сайтов.
Хотя именно эти студии устанавливают максимальные расценки на создание сайтов, средств для элементарного следования правилам у них почему-то не находится. А нужно ли в действительности следовать стандартам? Конечно, нужно. Рекомендации придумываются не для усложнения жизни разработчиков, каждое требование предназначено помочь делать веб-страницы лучше. Например, многие разработчики не любят в описании изображений добавлять альтернативный текст (атрибут alt в теге img), что валидатором воспринимается как ошибка. Однако нередко у пользователя может быть отключена загрузка изображений или при загрузке рисунков была оборвана связь. В этом случае надписи в рамках на месте рисунков могут очень помочь. Кроме того, альтернативный текст помогает в поисковой оптимизации сайта. Неверное, разработчикам стоит побороть лень и добавлять текст к каждому рисунку, чтобы сайтом было удобнее пользоваться, и он был лучше оптимизирован для поисковых запросов.
Некоторые разработчики могут возразить, что рисунки без дополнительного текста у них используются как элементы оформления, и не содержат никакой полезной информации. Но оформление следует отделить от содержимого и ссылки на такие рисунки вынести в файл стилей CSS. Не зря для изображений, загружаемых как фон, и описанных в файле CSS, не предусмотрен альтернативный текст. Точно так же и многие другие рекомендации W3C, помогают разработчику сделать сайт более качественным. И что бы ни говорили противники следования стандартам, основная причина несоответствия сайтов спецификациям W3C – банальная лень разработчиков.
Например, зачем ставить закрывающие теги, если браузер и так разберется, когда нужно что-то закрыть? Ответ прост – чтобы исключить любую неоднозначность толкования. Если в коде явно указано, где начинается какой-то элемент и где он заканчивается, никаких проблем гарантированно не будет. Если же указано только начало элемента, то разные браузеры могут по-разному определить его конец.
И то, что сегодняшние браузеры правильно все определяют, не гарантирует, что так будет всегда. Да и разобраться в хорошо структурированном коде легче, проще внести в него изменения. Или разработчики специально отступают от стандартов, чтобы в случае чего только они смогли бы внести изменения в свои разработки? Если это так, заказчики еще более настойчиво должны требовать выполнение всех стандартов. Конечно, можно предположить, что какой-то разработчик настолько хорошо изучил языки разметки гипертекста и особенности пользователей, приходящих на сайт, что он выработал собственные рекомендации, отличающиеся от рекомендаций W3C. Однако в это верится с трудом, да и производители браузеров ориентируются в своих перспективных разработках на W3C, а не на этого разработчика. Создавая сегодня сайт, соответствующий стандартам, можно с большой долей уверенности предполагать, что он будет правильно отображаться в следующем поколении браузеров. Если сайт нестандартный, уверенность будет несколько меньше. Может, веб-студии специально не следуют стандартам, чтобы при выходе новых браузеров клиенты были вынуждены заказывать у них исправление сайтов? Может, делать сайты в соответствии с рекомендациями консорциума W3C очень сложно и требует дополнительных капиталовложений?
Это совершенно не так. Создать сайт, все страницы которого соответствуют стандарту XHTML 1.0 Transitional, достаточно просто, и это не требует дополнительных затрат. Просто надо знать рекомендации и при разработке им следовать. Через некоторое время разработчик будет автоматически добавлять закрывающие теги и альтернативные описания для рисунков, а также не вставлять элементы в места, для них не предназначенные. Нередко противники стандартов утверждают, что они бы рады следовать рекомендациям, но используемая ими система управления контентом (CMS) генерирует нестандартный код. А кто заставляет использовать такую систему? Если это разработка самой веб-студии, то надо ее исправить, а если это сторонняя разработка, то данная ее особенность говорит о невысоком качестве.
Конечно, можно и дальше использовать такую систему, но при прочих равных условиях клиентам следует выбирать ту студию, которая использует современную CMS, генерирующую соответствующий международным рекомендациям код. Соответствие рекомендациям W3C при разработке сайтов – требование будущего, и уже сегодня веб-студии должны постепенно переходить к использованию исключительно стандартных решений. Возможны некоторые отступления от стандартов для обеспечения совместимости с устаревшими версиями браузеров, но все эти исключения должны быть локализованы и отделены от основного кода. Никаких разумных оправданий игнорированию стандартов нет. Не надо говорить: “у меня сайт красивый, а на стандарты мне наплевать”. Сайт должен быть красивым, удобным и стандартным. Красивый, но нестандартный сайт заведомо хуже, чем красивый, но стандартный. К сожалению, пока ведущие веб-студии не пришли к такому мнению, но, надеюсь, эпоха стандартизации в создании веб-сайтов наступит достаточно скоро.