6 принципов вёрстки
Эти рассуждения были навеяны постом akella про оценку качества вёрстки. Прочитав этот пост и немалое количество комментариев к нему, решил составить список (аля «10 правил чего-то там» — говорят такие заголовки — это очень хорошо и помогают блогу «раскрутиться») критериев, которыми руководствуюсь я при вёрстке страниц.
Стоит также заметить, что HTML+CSS, также как и программирование под веб, для меня является чем-то вроде хобби — т.е. «мега» проектов я (пока?) не реализовывал. Может поэтому все мои работы в этой отрасли удовлетворяли почти всем этим критериям.
Итак, шесть простых принципов в HTML-вёрстке, которыми я руководствуюсь:
1. Семантика и «лёгкость» кода
Я стараюсь делать код семантически не перегруженным. Я предпочитаю простоту и изящность как в коде так и в дизайне. Мне интересно пробовать реализовать идею дизайнера без использования лишних сущностей. Понятное дело, что не всегда это получается и даже на CSS Zen Garden есть несколько div'ов специально зарезервированных для реализации фантазий дизайнеров, но мне кажется, что такие вещи должны скорее быть исключениями, нежели правилами.
2. Стандарты
Я человек, который старается блюсти стандарты. Особенно это касается моей профессиональной деятельности. В связи с этим я пытаюсь достичь максимально валидного кода — по крайней мере стараюсь не допускать ошибок валидации. Что самое интересное — это смотря на ошибки и предупреждения на многих сайтах (спасибо Firefox + Html Validator) я делаю вывод, что большинство из них было допущено из-за лени разработчиков, хотя отчасти эта вина самого HTML.
3. Работоспособность с отключёнными CSS и Javascript
Это один из немаловажных принципов. И дело тут не только в том, чтобы сделать возможным пользование сайтом браузерами типа lynx. Самая главная причина — это сделать сайт доступный людям с ограниченными возможностями.
4. Accessibility
Очень много сайтов, имхо, абсолютно не пригодны к посещениям, например, слепыми пользователями. А сделать их жизнь в Интернет немного легче не так уж и сложно — грамотно расставить блоки, подписать картинки и ссылки — я думаю это наименьшее, что должен предусмотреть каждый профессиональный верстальщик и программист. Кстати, в последнее время я задумываюсь поставить какой-нибудь браузер для слепых, чтобы смотреть как они это «видят».
5. Кросс-браузерность
Верстаю под «лисой», но вёрстка проверяется под IE, Opera, Safari Win… Иногда пробую lynx :) (Не всегда, правда, получается добиться попиксельного совпадения в IE — но «перекосов» нет).
6. Технологии
Мне нравятся и я поддерживаю тот путь, по которому развивается веба. Я стараюсь и буду стараться придерживаться его и внедрять в код такие вещи как, например, microformats.
P.S.
Конечно я реалист и я понимаю, что далеко не всегда возможно беспрекословно следовать всем правилам и инструкциям, но моё мнение таково, что каждый профессионал должен любить то, чем занимается и делать своё дело должным образом. Я также верю в то, что время «дубового» Интернет уходит, а взамен приходит Интернет «качественный», сделанный профессионалами, который любят своё дело ;)