Опыт
Браузеры и Баги
Когда обсуждаем новый проект, первый вопрос, который я [frontend-разработчик] задаю — «Какие будут целевые браузеры и устройства?». И, если слышу ответ «IE7+», хочется убежать домой, забиться в угол и плакать. Итак, поговорим о багах, костылях, хаках.

Самый нормальный браузер, который отвечает почти всем стандартам — Chrome. Очень нравится его тихое автообновление, можно быть уверенным, что пользователь использует если не последнюю, то предпоследнюю версию. Поддерживает все часто используемые фичи, с ним обычно не возникает проблем. Единственный косяк — сглаживание шрифтов и картинок, которое почему-то отключается на время анимации элемента и включается, когда анимация завершена. Из-за этого элементы могут немного «прыгать».
Второй браузер, используемый при отладке — Firefox. Тоже поддерживает почти все, но не у всех пользователей стоит последняя версия. Проблем почти никогда не возникает. Единственный баг, который сломал мне мозг — CSS свойство box-shadow (тень от блока) игнорируется, если, какой либо атрибут будет не «0px», а «0». Мы-то понимаем, что это одно и то же, даже IE понимает, а вот Firefox почему-то — нет. Ну, и в каком-то проекте при реализации слайдера возникла следующая проблема: CSS свойство overflow:hidden не работало. Спасибо, StackOverflow! Баг исправляется заданием прозрачности в 0.99. Все равно никто не увидит разницы:)
Еще есть Opera. С тех пор, как она начала работать на движке Webkit, с ней тоже нет проблем. Доля пользователей Opera со старым движком слишком мала, чтобы принимать их во внимание. Уж извините!

Ночной кошмар любого разработчка — IE. Если с версиями 11 и 10 проблем относительно мало, то 9 версия уже начинает глючить. «Искаропки» IE не делает кросс-доменные запросы, а это значит, что приходиться делать «прослойку» на PHP на том же домене. Мы столкнулись с этим, когда пришлось работать с API Вконтакте. Самая глупая вещь, которая отбивает желание работать с IE — он не поддерживает ни ttf, ни otf шрифты! Это значит, что шрифты, используемые на сайте, приходиться конвертировать в формат eot. Бесит, блин! Еще IE не поддерживает скругленные углы у блоков. Я не знаю, может быть таким способом Microsoft пытается пропиарить свой Metro стиль, но лично я не хочу работать только с ним. Приходиться либо делать кнопки картинками (2000 год, привет!), либо мириться с другим дизайном в IE.
Отдельно нужно сказать про рендеринг шрифтов на разных системах. Если в Mac OS шрифты выглядят так же, как в макете, то под Windows они почему-то становятся тоньше. Соответственно, меняется ширина заголовков. Из-за этого могут возникнуть некоторые проблемы, которые, впрочем решаются заголовками из картинок. Вы поймете о чем я, если зайдете на store.apple.com, они тоже так делают.
Еще у нас есть мобильные устройства. Если Chrome mobile ведет себя почти так же, как и его десктопный брат, то Safari, а тем более встроенный браузер Android могут доставить немало проблем. Цифры говорят, что встроенным браузером в Android мало кто пользуется, поэтому мы стараемся хотя бы сохранить функционал.
К сожалению, как бы этого ни хотелось, стандарты соблюдаются не везде. И даже такие крупные фирмы, как Microsoft, страдают этим.
Lead Developer,
Artem Ibatullin