【发布时间】:2016-03-05 12:49:36
【问题描述】:
我正在创建一个关键帧过渡序列。我希望圆圈出现两秒钟,然后星星出现另外两秒钟。我遇到了几个问题。
为什么我的星星在动画结束时变成了一个矩形?
如何让星星从中心出现,而不是从左上角斜向滑入?
为什么我的红色圆圈会消失一两秒然后星星出现?
有谁知道我做错了什么?
body {
background-color: #F5F5F5;
color: #555;
font-size: 1.1em;
font-family: 'Lato', sans-serif;
}
.star {
background-color: #f1c40f;
color: white;
width: 250px;
height: 250px;
margin: 30px auto;
text-align: justify;
-webkit-animation-name: example; /* Chrome, Safari, Opera */
-webkit-animation-duration: 4s; /* Chrome, Safari, Opera */
-webkit-animation-iteration-count: 1 forwards; /* Chrome, Safari, Opera */
animation-name: example;
animation-duration: 4s;
animation-iteration-count: 1 forwards;
}
/* Chrome, Safari, Opera */
@-webkit-keyframes example {
0%, 49% {
background-color: red;
left: 0px;
top: 0px;
height: 50px;
width: 50px;
border-radius: 50%;
}
50%,
100% {
shape-inside: polygon(125px 0, 175px 85px, 250px 90px, 190px 160px, 225px 250px, 125px 210px, 25px 250px, 60px 160px, 0px 90px, 75px 85px);
shape-padding: 10px;
/*transition: all 1s ease; */
-webkit-clip-path: polygon(125px 0, 175px 85px, 250px 90px, 190px 160px, 225px 250px, 125px 210px, 25px 250px, 60px 160px, 0px 90px, 75px 85px);
}
/* Standard syntax */
@keyframes example {
0%, 49% {
background-color: red;
left: 0px;
top: 0px;
height: 50px;
width: 50px;
border-radius: 50%;
}
50%,
100% {
shape-inside: polygon(125px 0, 175px 85px, 250px 90px, 190px 160px, 225px 250px, 125px 210px, 25px 250px, 60px 160px, 0px 90px, 75px 85px);
shape-padding: 10px;
/* transition: all 1s ease; */
-webkit-clip-path: polygon(125px 0, 175px 85px, 250px 90px, 190px 160px, 225px 250px, 125px 210px, 25px 250px, 60px 160px, 0px 90px, 75px 85px);
}
}
<div class="star">
</div>
【问题讨论】:
-
this 可以接受吗?基本上从没有
clip-path到clip-path50% 的变化似乎导致了第二个和第三个问题。 -
@Harry 是的,这太完美了!谢谢!
标签: html css animation css-animations