gpt4 book ai didi

html - 左右移动.. css 只是非常通用

转载 作者:太空狗 更新时间:2023-10-29 15:00:03 33 4
gpt4 key购买 nike

我想写一个通用的 css 动画来左右移动一个 div,触及容器的边缘 .. 以一种简单的方式应用于任何我不知道的 div,除了它有一个绝对定位.

问题是简单地将 left 置于 0% 然后置于 100% .. 一会儿消失了,我应该使用类似 calc (100% -width) ..放置一个 50% 的关键帧几乎就像我想要的那样,但是速度变慢了,而且它不是很流畅和线性......有什么建议吗,考虑到我不知道我的 div 有多长,而且我不使用 js/jquery,但只使用 css..?

https://codepen.io/alemarch/pen/vrvgMo

 @keyframes destraSinistra {
0% {
left: 0%;
color: black;
right: unset;
}
50% {
left:50%;
right: 50%;
}

100% {
left:unset;
right: 0px;
color: green;
}
}


#div1 {
position: absolute;
border: solid 1px lightgray;
width: 100px;
top: 200px;
height: 30px;
background-color: lightgreen;
animation-name: destraSinistra;
animation-duration: 4s;
animation-iteration-count: infinite;
animation-timing-function: linear;
animation-direction: alternate-reverse
}

最佳答案

使用 transform 结合 leftright 来避免添加任何固定值:

@keyframes destraSinistra {
0% {
left: 0;
}
100% {
left: 100%;
transform:translateX(-100%);
}
}


#div1 {
position: absolute;
border: solid 1px lightgray;
width: 100px;
height: 30px;
background-color: lightgreen;
animation: destraSinistra 1s linear infinite alternate
}
<div id="div1"></div>

关于html - 左右移动.. css 只是非常通用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51099457/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com