Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

Валидация и доступность контента (accessibility)

Accessibility *
ravve опубликовал перевод хорошей статьи (спасибо ему за это), однако в комментариях я увидел, что некоторые хабралюди считают, будто доступность контента обеспечивается одной лишь удачно пройденной процедурой валидации на сайте W3C. Это далеко не так. Валидация в данном случае скорее как дополнительный критерий качества того кода, который заключает в себе контент.

Проблема обеспечения доступности контента шире, чем просто обеспечение валидности кода. Категории людей, испытывающих трудности с доступом к сетевому контенту, не ограничены только слабослышащими и слабовидящими.
Читать дальше →
Всего голосов 11: ↑10 и ↓1 +9
Просмотры 1.2K
Комментарии 9

Валидация HTML — миф

Разработка веб-сайтов *
Пришло время и я открою главную тайну:

Нет ничего страшного если ваш сайт невалиден из-за 2-3х аттрибутов которые придумали вы сами.

Попробуйте придумать вескую причину почему это утверждение в корне неправильно прежде чем
читать дальше
Всего голосов 77: ↑57 и ↓20 +37
Просмотры 2.6K
Комментарии 142

Не зная броду, не суйся в воду, или снова о деградации и валидации

Разработка веб-сайтов *
Для начала стоит понять, как происходит валидация.

Во-первых, не бывает html-валидации. Бывает валидация SGML. SGML — это средство описания формального синтаксиса языков разметки. При валидации документ пытается соблюсти DTD, который представляет собой формализованное описание синтаксиса.

Во-вторых, валидатор всего лишь указывает вам на ошибки и несоответствия описанному формальному синтаксису. Это необходимо для того, чтобы документ был валидным — это даёт бОльшие шансы того, что данный документ будет корректно воспринят большинством браузеров нынешнего и будушего поколений.
брод
Всего голосов 28: ↑23 и ↓5 +18
Просмотры 935
Комментарии 45

О пользе валидации

Чулан
Сослуживец (верстальщик) в истерике: «Задолбал глючный IE, чтоб он провалился, ни фига никогда в нем ничего не работает, достало». Начинаем разбираться. Открываю в Mozilla с Firebug и валидацией на лету. Область, создающая проблемы (главное меню), разъехалась. Валидатор сходу выдает семь ошибок. Поправили код, валидацию теперь проходим на ура. Само собой встало на место меню, в IE всё ок, как положено.

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

Вывод: как и в любой проблемной ситуации, виноват, разумеется, не браузер, а наши кривые ручки, которые в этот браузер суют всякие непотребные конструкции. Золотое правило автоматизации кроссбраузерной верстки: документ обязан проходить валидацию как минимум без ошибок (в идеале и без предупреждений). Сделаете это — сделаете всё. Нам-то в этом случае, конечно, просто повезло, не валидация излечила документ, но лечить глюки лучше именно в валидном документе.
Всего голосов 16: ↑15 и ↓1 +14
Просмотры 212
Комментарии 18

А закрыл ли ты тег?

IT-стандарты *
Работаю в большом проекте, 16 человек, распределенная работа. Часто возникает ситуация, когда после очередного апдейта проекта обнаруживается, что какой-нибудь div находится совсем не там, где ему полагается быть. Напимер отваливается правая колонка и подло подстраивается под основной. Сразу же начинаются попытки выяснить причины столь некорректного поведения: просматривается CSS, возносятся молитвы к FireBug. Но в итоге все оказывается тщетно, т.к. скорее всего кто-то просто банально забыл закрыть тег.

Иногда это можно вычислить, просмотрев все измененные за какой-то промежуток времени шаблоны. Но какой промежуток просматривать? Вчера все работало, сегодня нет. За это время были залиты изменения в десятки, а то и сотни файлов. И начинается кропотливый поиск.

А вот если бы была утилитка, которая могла бы проверять наличие таких ситуаций.
Вооружаюсь гуглом и начинаю планомерный поиск. Час-два серфинга не приводят ни к каким результатам. Конечно-же есть всяческие онлайн валидаторы кода, начиная с самого de facto W3C'шного, но он, зараза, слишком умный и проверяет ВСЕ, выводит множество error'ов и warning'ов, которые часто влияют друг на друга, и чтобы с помощью него в коде найти подло закравшийся незакрытый тег, нужно потратить много нервов и времени.

И вот на этой грустной ноте нерешенной проблемы обращаюсь к вам, хабралюди. Какими средствами вы пользуетесь, когда нужно просто найти незакрытые теги, но не нужно (пока-что) отвлекаться на всяческие незаданные alt'ы для картинок и прочие менее критические ошибки?
Всего голосов 23: ↑18 и ↓5 +13
Просмотры 24K
Комментарии 80

Не валидный CSS на сайте The Web Standards Project

Разработка веб-сайтов *
Со странички wordpress.org/about зашел на сайт организации The Web Standards Project, которая борется за соблюдение стандартов W3C. Посмотрел, что они пишут у себя на сайте, пролистал до футера, там ссылка на валидацию — кликнул ради интереса. XHTML 1.0 Strict — полностью валидный, а для CSS валидатор выдает вот такое сообщение:



Куда катится мир?
Всего голосов 59: ↑35 и ↓24 +11
Просмотры 714
Комментарии 20

96% сайтов российских веб-студий не проходят валидацию!

Чулан
— Кросс-пост из моего блога

Именно такую статистику я вывел после проверки первых двухсот сайтов веб-студий, которые нашлись в Яндексе по запросу «веб студия». Валидировал я соответственно с помощью validator.w3.org. Ниже немного воды, диаграмка, и ссылка на собранные данные.

Читать дальше →
Всего голосов 28: ↑20 и ↓8 +12
Просмотры 310
Комментарии 45

w3c vs Habrahabr

Чулан
«Сделаем хабр чище...»

W3C стандарты, кто-то их прислушивается, кто-то нет, ну а кто-то вообще не знает что это и спокойно спит. Я сам искренне считал и считаю, что стандарты хороши, но в меру, иначе это иногда приводит к разочарованиям.
В принципе ошибки, неточности и прочие ляпы делают все, мы же не роботы, потому данный топик о валидности хабра больше информативный, потому как цели поумничать, я, как пользователь хабра, не преследовал, просто хотелось предоставить информацию для размышления.
Читать дальше →
Всего голосов 34: ↑18 и ↓16 +2
Просмотры 158
Комментарии 16

Серверная валидация пользовательских данных

.NET *

Доброго времени, хаброчеловеки!


Мне хотелось бы поднять тему серверной валидации пользовательских данных. Поискав на хабре топики данной тематики и погуглив, пришёл к выводу, что люди часто изобретают свои собственные велосипеды для реализации механизма валидации. В данной статье хочу рассказать о простом и красивом решении, которое успешно применяется в нескольких проектах.
мне интересно, что дальше...
Всего голосов 72: ↑62 и ↓10 +52
Просмотры 7.2K
Комментарии 66

Отличная идея: цветовая индикация ввода пароля

Интерфейсы *
Разработчик Mattt Thompson предложил, на мой взгляд, очень оригинальную и интересную идею цветовой индикации ввода пароля в поля формы. Для введенного пароля считается хэш который представляется в виде трех цветных полосок рядом с полем ввода пароля. Таким образом, во-первых, производится валидация повторного ввода пароля. А во-вторых и это самое главное, зная свой цветовой код вы сможете сразу узнать ошиблись вы или нет при первом вводе пароля.


Более подробно о идее в блоге автора. Попробовать идею на живом примере можно здесь.
Плагин для jQuery с реализацией идеи github.com/mattt/Chroma-Hash доступен по лицензии MIT.

PS: НЛО! Введи такую фичу на Хабре, поддержи оригинальную идею!
Всего голосов 181: ↑148 и ↓33 +115
Просмотры 1.4K
Комментарии 101

Скоростная валидация (на примере сайта habrahabr.ru)

Разработка веб-сайтов *
Валидация. О её достоинствах/недостатках, необходимости/ненужности, актуальности/неактуальности и прочем, и прочем… можно спорить бесконечно :) Для себя я вывел одно неоспоримое правило (очень простое): когда я вижу в правом нижнем углу Firefox'а такой значок —

валидацию не прошёл

я точно могу знать, что ошибка где-то в незакрытом тэге, некорректном расположении блоков или, например, неправильно названном атрибуте… или ещё в чём-то, что реально влияет на производительность/функциональность/отображение (нужное подчеркнуть). У меня не возникает ленивых размышлений из серии: «А, ну это ж валидатор… Что-то там ему опять не понравилось… Можно забить».

На самом деле, при отсутствии каких-либо средств, так сказать, «дебаггинга» html-разметки, валидатор — отличный способ избежать глупых ошибок и отловить их быстро и безболезненно. (Казалось бы, прописные истины, но почему-то об этом часто забывают… Меня удивляет, как те же программисты частенько пренебрежительно относятся к валидации html и в очередной раз пишут, к примеру, значение атрибута без кавычек — при переносе верстки в шаблон. Казалось бы, кому же ещё сознавать значение соблюдения правил синтаксиса и всяких формальностей, как не кодерам?)

Но вернёмся к нашему заголовку…
Читать дальше →
Всего голосов 67: ↑47 и ↓20 +27
Просмотры 802
Комментарии 64

Изменения в валидации финальной версии ASP.NET MVC 2

.NET *
и несколько вопросов безопасности, на которые стоит обратить внимание

imageБрэд Уилсон (Brad Wilson), один из разработчиков в группе ASP.NET MVC, сообщил в своем блоге о грядущих концептуальных изменениях, которые будут произведены в финальной версии ASP.NET MVC 2.

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

Читать дальше →
Всего голосов 32: ↑20 и ↓12 +8
Просмотры 975
Комментарии 9

Новые подходы к валидации в Rails 3

Ruby on Rails *
Перевод

Введение


Как вы уже знаете из поста тов. Yehuda Katz об ActiveModel абстракции, в Rails 3.0, ActiveRecord отныне содержит в себе некоторые аспекты ActiveModel, среди которых модули валидации.

И прежде чем мы начнем, давайте вспомним, какие методы валидации у нас уже есть:
  • validates_acceptance_of
  • validates_associated
  • validates_confirmation_of
  • validates_each
  • validates_exclusion_of
  • validates_format_of
  • validates_inclusion_of
  • validates_length_of
  • validates_numericality_of
  • validates_presence_of
  • validates_size_of
  • validates_uniqueness_of
Все они по прежнему в строю, но Rails 3 предлагает несколько новых отличных альтернатив.
Читать дальше →
Всего голосов 44: ↑39 и ↓5 +34
Просмотры 8K
Комментарии 8

Создаём Ajax форму с базой данных, валидацией полей, E-mail-уведомлениями и капчей за 5 минут

Блог компании MyTaskHelper
Мы предлагаем ни много ни мало — создавать с нашей помощью Ajax-формы любой сложности с валидацией полей, капчей и прочими опциями, такими как, например, возможность модерации добавленной записи, установка e-mail'а, на который будут отправляться уведомления о заполнении формы и многими другими.
Для создания формы пользователю необходимо выполнить следующие действия:
Читать дальше →
Всего голосов 12: ↑4 и ↓8 -4
Просмотры 3.6K
Комментарии 11

Фильтры: смерть регуляркам и правильная валидация

PHP *
Фильтры данных впервые появились в PHP 5.0, и по какому-то стечению обстоятельств остались незамечеными большй частью кодеров. Наверное, это можно объяснить отсутствием чего-нибудь подобного в PHP4, а может просто мануал плохо читали. Я тоже узнал про них случайно… А ведь эта замечательная функция позволяет избавиться от запутаных, и подчас некорректных, регулярных выражений, при выполнении типичных задач.
Мануал по фильтрам находится здесь. Приведу только основную информацию и пару практичных примеров.
Читать дальше →
Всего голосов 161: ↑123 и ↓38 +85
Просмотры 24K
Комментарии 93

XSD: частичная валидация

Алгоритмы *
XSD — это язык описания структуры XML документа. Его также называют XML Schema. При использовании XML Schema XML-парсер может проверить не только правильность синтаксиса XML документа, но также его структуру, модель содержания и типы данных. Многие так или иначе сталкивались с процедурой полной валидации, обеспечивающей соответствие документа заданной схеме или сообщающей о возможных ошибках. В данной статье речь пойдет о частичной валидации, кроме вышеописанного, позволяющей конструировать валидные документы «на лету». Мы разберемся, какие возможности может предоставить такой подход и способы его реализации.
Читать дальше →
Всего голосов 26: ↑23 и ↓3 +20
Просмотры 26K
Комментарии 9

Strain It! — Валидация и приведение данных на PHP

Разработка веб-сайтов *
Из песочницы

Введение


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

Но после того как я перешел на PHP 5.3 меня потянуло написать новый валидатор на основе анонимных функций. А заодно еще раз потренироваться в их использовании. Мною ставились следующие требования к будущему классу:
  • Декларативность (информация о валидации должна задаваться объектами/массивами)
  • Гибкость (высокая эффективность кода, написанного с помощью этого класса)
  • Скорость (ничего лишнего)

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

Что же в итоге получилось… читаем ниже. Здесь я не буду претендовать на оригинальность решения и прочую ерунду. Если вам понравится такой подход, используйте его в своих проектах, а если нет — то нет. Для отчаянных любителей извращений исходники я опубликую в конце статьи.
Читать дальше →
Всего голосов 19: ↑12 и ↓7 +5
Просмотры 3.3K
Комментарии 25

Регулярные выражения для валидации распространенных видов данных

Разработка веб-сайтов *
Для проверки текстовых полей на валидность обычно используют регулярные выражения. Существует несколько наиболе распространенных видов таких даных, как например номер кредитки, дата в определенном формате и т. д. На сайте html5pattern.com собирается коллекция регулярных выражений для таких данных (там это позиционируется, как возможное содержимое html5-атрибута pattern у inpit-элементов, но эти регулярные выражения можно использовать и для привычной валидации с помощью javascript). Актуальные для российской аудитории примеры, вместе с соответствующими регулярными выражениями вы можете посмотреть под катом.
Читать дальше →
Всего голосов 133: ↑97 и ↓36 +61
Просмотры 413K
Комментарии 66