Верх страницы
Время для прочтения: 0 мин. 8 сек.

CSS expression в Webkit вызывает ошибки

CSS expression — метод записи выражений JavaScript непосредственно в свойствах CSS для браузеров Internet Explorer. Все остальные браузеры игнорируют expression.

Можно сказать, что это неплохой подарок дизайнерам, поскольку множетсво IE багов может быть исправлено при помощи expression. Но при этом то, что вы напишите в expression нужно как-то записать и для других браузеров.

Опытным путём было обнаружено, что конструкции в CSS вида:

<style>
.class {behavior:expression((function(){})(this))}
</style>

в браузерах на движке WebKit (Chrome, Safari) вызывают ошибки. Стили после данной конструкции браузеры перестают видеть и применять к элементам. Происходит это по вине фигурных скобок «{» и «}». Причём если убрать «{«, то баг исчезает, а если «}» — останется.

Чтобы избежать недоразумений, выносите подобные конструкции в конец CSS — файла.

Автор: Кобзарёв Михаил

Русский разработчик с 20-ти летним стажем. Работаю с PHP, ООП, JavaScript, Git, WordPress, Битрикс, Joomla, Drupal, Opencart, DLE, Laravel, Moonshine, SuiteCRM.

Оптимизирую сайты под Google Page Speed, настраиваю импорты для больших магазинов на WooCommerce + WP All Import. Пишу плагины на заказ. Все мои услуги.

Веду блог о разработке, дайджест в телеграмме и в ВК.

Вы всегда можете нанять меня.

Комментарии
Подписаться
Уведомить о
guest

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии
Предыдущая запись
Следующая запись

Давайте дружить
в Телеграме

Авторский блог вашего покорного слуги в Telegram про web, программирование, алгоритмы, инструменты разработчика, WordPress, Joomla, Opencart, Laravel, Moonshine, фильмы и сериалы