Статьи

Вы придерживаетесь строгих стандартов кодирования CSS в стиле BBC?

Сайт BBC является одним из самых популярных направлений в Интернете. Он имеет рейтинг страницы 9 и репутацию за качественные отчеты и ресурсы.

Внутри BBC также есть некоторые из самых строгих руководств, известных веб-разработчикам. Это не только проблемы с браузером — каждый аспект технического развития имеет набор опубликованных правил .

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

Общие принципы CSS

BBC использует XHTML 1.0 строго по содержанию, и в руководствах говорится, что он должен быть доступен для чтения без использования CSS или JavaScript. Это важно, но многие разработчики часто упускают это из виду, поскольку спешат добавить последний виджет jQuery.

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

Согласно руководству, все CSS должны быть действительными в соответствии с опубликованной рекомендацией W3C. Я подозреваю, что это вызывает некоторые головные боли, так как кажется, что исключает свойства с префиксом вендора, такие как -moz-border-radius и -webkit-box-shadow . Тем не менее, сайт BBC использует их экономно.

! важный запрещен, потому что он переопределяет пользовательские стили. Это немного грубовато, поскольку может быть полезно для исправлений IE6. Тем не менее, я был виновен в злоупотреблении им для быстрого и грязного взлома, когда я должен был устранить корень проблемы каскадирования.

Наконец, если вы отказались от IE6, подумайте о программистах BBC, все еще тестирующих в IE5.5! CSS особенно неприятен в этом браузере: он пытается разобрать свойства, но терпит неудачу.

Реализация CSS

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

Встроенные стили запрещены. Это хорошо. Любой кодер, найденный с их помощью, должен быть аннулирован лицензией на веб-разработку!

Интересно, что внешние CSS-файлы нельзя загружать с помощью @import поскольку это ухудшает кеширование в браузере. Является ли? Я сомневаюсь, что это все еще имеет место в современных браузерах.

Типография и цвет

В конец всех свойств font-family необходимо добавить одно общее имя шрифта с засечками, без засечек, курсивом или моноширией. Опять же, это то, что разработчики часто забывают: не у всех есть Arial или Helvetica на своем ПК.

Я любил правило двойного отрицания:

Типографские размеры НЕ ДОЛЖНЫ указываться в единицах, размер которых не изменяется во всех браузерах, таких как px и pt, за исключением таблиц стилей печати.

BBC рекомендует использовать значения em,% или ключевого слова, а текст должен оставаться читаемым, когда размер увеличивается на два шага в любом браузере уровня 1. Могу поспорить, что это испытательный кошмар!

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

Разработчик рай или ад?

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

Применяет ли ваша компания строгие правила кодирования? Они установлены в камне или достаточно гибки? Они разумны или смешны? Они регулярно обновляются или вы все еще пишете для Netscape 3.0? Руководящие принципы помогают или мешают вашим ежедневным задачам развития?

Мне также было бы интересно услышать от каких-либо разработчиков на BBC … Вы следуете правилам к письму или вы пробираетесь в странное, важное, когда ваш менеджер не смотрит?