#css #animation #svg
#css #Анимация #svg
Вопрос:
У меня есть значок диаграммы. Ось X Y и стрелка, указывающая в правом верхнем углу. Я хочу, чтобы эта маленькая стрелка перемещалась из верхнего правого угла и возвращалась из левого нижнего. Прикольная маленькая анимация при наведении курсора мыши. К сожалению, перемещение left/right
свойств не работает с путями, margin
поэтому я не пытался использовать translate
. Пока я понял это. Не могу понять, как скрыть стрелку, когда она перемещается влево-вниз:/ Есть идеи? https://codepen.io/anon/pen/xepdXO
.chart {
height: 66px;
width: 88px;
overflow: hidden;
}
.arrow {
animation: aaa 5s infinite;
}
@keyframes aaa {
0% {
transform: translate(0%);
}
50% {
transform: translate(800%, -500%);
}
75% {
transform: translate(0%);
}
100% {
transform: translate(-800%, 500%);
}
}
<svg class="chart" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<path d="M992,832H64V160c0-17.7-14.3-32-32-32S0,142.3,0,160v704c0,17.7,14.3,32,32,32h960c17.7,0,32-14.3,32-32S1009.7,832,992,832
z"/>
<path class="arrow" d="M992,192H736c-17.7,0-32,14.3-32,32s14.3,32,32,32h178.8L608.3,562.8L438,393.3c-12.5-12.5-32.7-12.4-45.2,0l-255.9,256
c-12.5,12.5-12.5,32.8,0,45.2c6.3,6.3,14.5,9.4,22.7,9.4s16.4-3.1,22.7-9.3l233.3-233.4l170.3,169.5c12.4,12.4,32.8,12.4,45.2-0.1
l329-329.3V480c0,17.7,14.3,32,32,32s32-14.3,32-32V224C1024,206.3,1009.7,192,992,192L992,192z"/>
</svg>
Комментарии:
1. вы хотите, чтобы он отображался только как движение вверх?? и не опускается??
2. откуда именно вы хотите, чтобы он появлялся и исчезал??
3. @JoykalInfotech Я хочу, чтобы стрелка выходила в правом верхнем углу — скрыть — и возвращалась слева-снизу. У меня проблемы со скрытой частью :/
Ответ №1:
Вы можете исправить анимацию, как показано ниже:
.chart {
height: 66px;
width: 88px;
overflow: hidden;
}
.arrow {
animation: aaa 3s infinite linear;
}
@keyframes aaa {
0%,100% {
transform: translate(0%);
}
50% {
transform: translate(400%, -250%);
}
50.1% {
transform: translate(-400%, 250%);
}
}
<svg class="chart" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1024 1024">
<path d="M992,832H64V160c0-17.7-14.3-32-32-32S0,142.3,0,160v704c0,17.7,14.3,32,32,32h960c17.7,0,32-14.3,32-32S1009.7,832,992,832
z"/>
<path class="arrow" d="M992,192H736c-17.7,0-32,14.3-32,32s14.3,32,32,32h178.8L608.3,562.8L438,393.3c-12.5-12.5-32.7-12.4-45.2,0l-255.9,256
c-12.5,12.5-12.5,32.8,0,45.2c6.3,6.3,14.5,9.4,22.7,9.4s16.4-3.1,22.7-9.3l233.3-233.4l170.3,169.5c12.4,12.4,32.8,12.4,45.2-0.1
l329-329.3V480c0,17.7,14.3,32,32,32s32-14.3,32-32V224C1024,206.3,1009.7,192,992,192L992,192z"/>
</svg>
Комментарии:
1. Ты мой герой, спасибо тебе! Я вижу, где я это сделал. Я новичок в этой анимации.