#html #css
#HTML #css — файл #css
Вопрос:
Кажется, я не могу найти свою ошибку, не могли бы вы мне помочь?
Я поставил -webkit-
префиксы, также все элементы действительны
вот код:
div {
width:200px;
height:200px;
background-color:red;
-webkit-animation-name: easter;
-webkit-animation-duration: 3s;
-webkit-animation-timing-function: ease-in;
-webkit-animation-delay:1s;
-webkit-animation-iteration-count: infinite;
-webkit-animation-direction: reverse;
}
@-webkit-keyframes easter {
from {top: 0px;}
to {top: 200px;}
}
<div>
hi
</div>
Я ожидал, что он переместится, но я не знаю, в чем моя ошибка в коде
Комментарии:
1. Что не работает? Разве это не работает в других браузерах, кроме браузеров на основе chromium? Это из-за префикса, который применим только к chromium.
2. какой именно тип анимации вы хотите, вы хотите, чтобы она была нижней или что
3. Добавьте это в свою позицию кода: относительный;
4. Если какой-либо из ответов помог вам, вы должны проверить его как ответ. Это поможет и другим пользователям
Ответ №1:
Вам нужно добавить position :relative;
в свой css
div {
width:200px;
height:200px;
background-color:red;
position :relative;
-webkit-animation: easter 5s infinite;
-webkit-animation-duration: 3s;
-webkit-animation-timing-function: ease-in;
-webkit-animation-delay:1s;
-webkit-animation-iteration-count: infinite;
-webkit-animation-direction: reverse;
animation: easter 5s infinite;
}
@-webkit-keyframes easter {
from {top: 0px;}
to {top: 200px;}
}
<!DOCTYPE html>
<html>
<head>
<style>
</style>
</head>
<body>
<div>
hi
</div>
</body>
Ответ №2:
Во-первых, webkit
префикс будет применяться только к браузерам на базе chromium. Во-вторых, для того, top
чтобы подать заявку, вам нужно указать position
что-то вроде абсолютного или относительного:
div {
width:200px;
height:200px;
background-color:red;
position: absolute;
-webkit-animation-name: easter;
-webkit-animation-duration: 3s;
-webkit-animation-timing-function: ease-in;
-webkit-animation-delay:1s;
-webkit-animation-iteration-count: infinite;
-webkit-animation-direction: reverse;
animation-name: easter;
animation-duration: 3s;
animation-timing-function: ease-in;
animation-delay:1s;
animation-iteration-count: infinite;
animation-direction: reverse;
}
@-webkit-keyframes easter {
from {top: 0px;}
to {top: 200px;}
}
<div>
hi
</div>
Ответ №3:
Дополнительная информация к ответу @Hien Nguyen, я бы посоветовал вам использовать следующий синтаксис при использовании анимации и работе с @keyframes
, чтобы повысить совместимость браузеров:
/* Safari 4.0 - 8.0 */
@-webkit-keyframes easter {
from {top: 0px;}
to {top: 200px;}
}
/* Standard syntax */
@keyframes easter {
from {top: 0px;}
to {top: 200px;}
}
Вместо:
@-webkit-keyframes easter {
from {top: 0px;}
to {top: 200px;}
}