Преобразование: TranslateZ применяется только после завершения переходаCSS

Разбираемся в CSS
Ответить
Гость
 Преобразование: TranslateZ применяется только после завершения перехода

Сообщение Гость »


Столкнулся ли я с пограничным случаем, вызывающим ошибку рендеринга, или я написал какой-то ужасный CSS?

Чтобы повторить это, я написал следующую демонстрацию:

Элемент body вкладывает элемент square, у которого есть дочерний элемент span, содержащий некоторый текст.

здравствуйте Элемент body управляет атрибутом perspective, чтобы translateZ мог работать, но по какой-то причине этот реквизит срабатывает только после анимации наведения закончил играть.

* { стиль преобразования: сохранение-3d; } тело { дисплей: гибкий; оправдание-содержание: центр; выровнять-элементы: по центру; высота: 500 пикселей; контур: 1 пиксель, сплошной красный; перспектива: 1000 пикселей; } .квадрат { позиция: абсолютная; дисплей: гибкий; оправдание-содержание: центр; выровнять-элементы: по центру; высота: 100 пикселей; ширина: 100 пикселей; цвет фона: синий; внизу: 0; непрозрачность: 0; переход: 500 мс; } тело:hover .square { внизу: 300 пикселей; непрозрачность: 1; } .квадратный интервал { белый цвет; размер шрифта: 24 пикселей; семейство шрифтов: без засечек; трансформировать: TranslateZ(45px); } Я тестировал этот пример в Edge, Chrome и Firefox, и все они получили одинаковые результаты, поэтому мне действительно интересно, что я здесь делаю не так. Вот ссылка на код.

Чтобы лучше понять проблему, я также прикрепил гифку, чтобы еще больше продемонстрировать проблему.


Изображение


Обратите внимание, как текст span, который преобразуется по оси Z, переходит к свойству transform: TranslateZ(45px) сразу после завершения перехода. Этот эффект можно заметить еще лучше, изменив значение пикселей, на которые преобразуется span.

Мне бы очень хотелось знать, что происходит и как это предотвратить. Спасибо!
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «CSS»