Разве переходы css3 не должны анимироваться между высотой: 100% и высотой: 200 пикселей?

css3-переходы будут интерполировать состояние высоты div.

В настоящее время chrome13 не будет интерполировать, если вы установите высоту с единицей измерения, отличной от предыдущей высоты.

i.e.:

    set height to 100%
    set height to 50% (on a different rendering frame)
    height will animate correctly (assuming proper use of transition)
    set height to 100px
    height will not animate

Ошибка хрома? ошибка спецификации?

Иллюстративный jsfiddle для мотивированных: http://jsfiddle.net/zDywJ/21/


person mmaclaurin    schedule 02.10.2011    source источник


Ответы (1)


Я не думаю, что это ошибка в Chrome или в спецификации.

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

person Jason Gennaro    schedule 11.10.2011
comment
Это круговое рассуждение - css не может этого сделать, потому что css не может этого сделать. Существует компонент времени выполнения css, который, безусловно, может определить, сколько пикселей оценивается на 100%. Эта информация уже известна среде выполнения в момент изменения стиля в приведенном выше примере. Текущий дизайн сильно ограничен в выразительности из-за этого недостатка. - person mmaclaurin; 02.12.2011