Как стать автором
Обновить

Комментарии 4

Также, пожалуйста, напишите в комментариях, какие у вас были случаи, когда CSS сбил вас с толку.

Drop-shadow + анимированный clip-path. Внезапно столкнулся несколько лет назад.

Казалось бы, всё норм, тенька отлично ложится на любой элемент с clip-path . Но как только clip-path анимируешь... Упс, drop-shadow говорит "я устала, я ухожу" — после начала анимации просто исчезает, и снова появляется на элементе только в финальном состоянии анимации. Наблюдалось во всех браузерах.

Методом (не)научного тыка удалось выяснить, что тенька работает на всём протяжении анимации, только если обернуть элемент с clip-path в дополнительный внешний контейнер-пустышку, назначив drop-shadow уже на него. Зачем, почему — сие науке так до сих пор и неизвестно...

Особую пикантность ситуации придаёт тот факт, что аккуратно и чётко работать по границам clip-path умеет только drоp-shadow — никакие другие виды теней не справляются.

Подобный нюанс видал как минимум в Firefox с backdrop-filter: blur. Если установить его элементу, а затем анимировать его передвижение через Web Animation API, то на время анимации блюр исчезает (всё чёткое), а в моменты остановки - снова появляется.

А попробуйте на внешнем контейнере-"обёртке", как я выше описал. Интересно, это какой-то общий косяк фильтров, или только определённых?

Анимировать цвета, градиенты, тени, фильтры, маски (вобщем весь "растр") плохая практика.. с точки зрения перформанса и батарейки.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий