- •Оглавление
- •Введение Актуальность темы
- •Цель работы
- •Основная часть
- •Что такое веб-стандарты?
- •Организации, разрабатывающие веб-стандарты
- •Классификация веб-стандартов
- •Концепция современных веб-документов
- •Применение веб-стандартов
- •Разделение сфер ответственности
- •Структура веб-документа - html и xhtml
- •Оформление документа - css
- •Связь css и html
- •Правила и каскадность css
- •Модели документов - Document Object Model, dom
- •Скриптовые языки
- •Объектная модель JavaScript
- •. EcmaScript – основа для других скриптовых языков
- •Развитие веб-стандартов
- •Важнейшие аспекты концепции веб-стандартов
- •Семантика
- •Валидность
- •Кроссбраузерность
- •Положительные следствия использования веб-стандартов
- •Ускорение загрузки веб-страниц
- •Облегчение машинной обработки
- •Бо́льшая гибкость в отношении различных сред и устройств
- •Лучшая доступность для пользователей с ограниченными возможностями
- •Доступность контента для пользователей устаревших браузеров
- •Гарантированная совместимость верстки с современными браузерами и последующими их версиями
- •Облегчение процесса разработки сайтов
- •Несоблюдение стандартов
- •Образование;
- •Бизнес-причины.
- •Системы электронной коммерции
- •Система управления содержимым
- •Образование
- •Бизнес-причины
- •Практическая часть
- •Способы проверки сайтов на соответствие стандартам
- •Соответствие современных сайтов стандартам
- •Заключение
- •Литература
Валидность
Валидность – это соответствие кода формальным требованиям спецификаций.
По логике, если проектирование и реализация чего бы то ни было осуществляется на основе неких спецификаций, названных в том или ином смысле стандартами, необходимо стремиться выполнять в полной мере все формальные требования этих спецификаций.
Проверить веб-документ на валидность можно с помощью специального онлайн-инструмента – валидатора. Чаще всего используются:
HTML-валидатор: validator.w3.org
CSS-валидатор: jigsaw.w3.org/css-validator
В идеале необходимо стремиться доводить код до полностью валидного состояния.
Валидность труднее обеспечить, если речь заходит об экспериментальных технологиях (например, HTML5 и CSS3). Общепринятой можно признать практику стремиться достигать абсолютной валидности кода разметки, а к таблицам стилей относиться более либерально, ограничиваясь обеспечением их синтаксической корректности. «Фундамент» HTML5 — словарь и грамматика языка разметки — относительно небольшая часть всей спецификации, которая уже в деталях проработана и не будет претерпевать принципиальных изменений. Многие свойства и значения, предусматриваемые в CSS3, разработчики пока вынуждены применять с вендорными префиксами, что автоматически делает таблицы стилей невалидными. Можно отметить, что валидность кода разметки куда как более важна, чем валидность таблиц стилей, ибо код разметки описывает самоценную сущность — структурированное содержание, а код таблиц стилей — всего лишь представление, которое не может существовать без содержания, и вариантов которого для одного и того же содержания теоретически может быть бесконечно много.
Потенциальной возможностью пересмотра тех или иных разделов «сырых» спецификаций порождена необходимость в первое время использовать экспериментальные свойства и значения CSS с вендорными префиксами - например, -moz- (для MozillaFirefox), -webkit- (для браузеров на основе движка Webkit - в частности, Chrome и Safari), -o- (для Opera). Применение конструкций CSS, использующих вендорные префиксы, конечно же, с формальной точки зрения автоматически делает соответствующие таблицы стилей невалидными, но этот «костыль нового поколения» — во всех отношениях разумное и удачное решение, против которого ничего не имеют ни W3C, ни сообщество веб-стандартистов. К слову, у упоминавшегося CSS-валидатора с сайта W3C даже есть опция проверки таблиц стилей с учетом использования вендорных префиксов.
CSS-валидатор проверяет правильность написания селекторов CSS, свойств CSS и их значений, наличие фигурных скобок { } и точек с запятой (;), но он не отслеживает наличие дубликатов свойств для одного и того же элемента, так как синтаксис CSS это позволяет. Значение валидности CSS такое же, как и у HTML: почти не имеет значения. Но, аналогично с HTML, лучше, если требования валидности будут соблюдены. Валидный код чёткий и структурированный, он легко поддаётся пониманию, что также немаловажно, особенно при исправлении, и особенно другими людьми. Также валидность CSS ускоряет процесс обработки, а, следовательно, и скорость загрузки страниц.
Для старых версий IE, пользуясь условными комментариями, веб-разработчики подключают таблицы стилей, содержащие порой та-а-акие хардкорные хаки — и ничего, живем… Нормальным браузерам и валидатору все, что скрыто за условными комментариями, безразлично. Ну да, конечно, это не верх изящества, а вполне себе костыль — но ничего лучше пока не придумали. Абсолютно валидные как в плане разметки, так и в плане стилей страницы, отображающиеся в IE6 не хуже, чем в остальных браузерах, возможны, но их внешний вид напомнит вам о начале века5.
Ключевые концепции философии современных веб-стандартов важны не сами по себе, а исключительно благодаря тем положительным следствиям, которые порождают уважительное отношение к этим самым концепциям со стороны веб-разработчиков в повседневной практике.