Html css中的无限动画有问题吗

Html css中的无限动画有问题吗,html,css,Html,Css,我在我正在建设的网站上添加了一个无限新闻代码。我只是有问题,使它不断旋转,而不切断,然后重新启动后,20秒。注意:我使用纯CSS是因为我希望它是一个静态网站 这是我正在使用的测试代码: 正文{ 字体:15px/1.5px Arial,Helvetica,无衬线; 利润率:40像素; 填充:0; 背景#f4; 背景尺寸:封面; 溢出:隐藏; } .动画部分{ 位置:相对位置; 宽度:100%; 高度:100vh; } 部分。滚动{ 宽度:100%; 显示器:flex; } 部分。滚动div{ 颜

我在我正在建设的网站上添加了一个无限新闻代码。我只是有问题,使它不断旋转,而不切断,然后重新启动后,20秒。注意:我使用纯CSS是因为我希望它是一个静态网站

这是我正在使用的测试代码:

正文{
字体:15px/1.5px Arial,Helvetica,无衬线;
利润率:40像素;
填充:0;
背景#f4;
背景尺寸:封面;
溢出:隐藏;
}
.动画部分{
位置:相对位置;
宽度:100%;
高度:100vh;
}
部分。滚动{
宽度:100%;
显示器:flex;
}
部分。滚动div{
颜色:#000;
背景:#fff;
字体大小:20px;
字号:900;
空白:nowrap;
文本转换:大写;
动画:动画40秒线性无限;
动画延迟:-20秒;
}
@关键帧设置动画{
0% {
转换:translateX(100%)
}
100% {
转换:translateX(-100%)
}
}
部分。滚动div:悬停{
动画播放状态:暂停;
}

席位持有人-席位持有人-席位持有人-席位持有人-席位持有人-席位持有人-席位持有人-席位持有人-席位持有人-席位持有人-席位持有人-席位持有人-席位持有人
持卡人-持卡人-持卡人-持卡人-持卡人-持卡人-持卡人-持卡人-持卡人-持卡人-持卡人-持卡人-持卡人
持票人-持票人-持票人-持票人-持票人-持票人-

我认为问题在于,你的翻译是100%开始的,因此需要50%的动画才能将其显示在屏幕上,并且取决于股票代码的大小,它可能需要更长的时间才能显示,因为它必须进一步移动

如果用填充物将股票代码推出屏幕(并通过填充股票代码右侧以显示所有股票代码项进行补偿),它将立即从屏幕右侧开始,因此您不会得到暂停:

@keyframes-ticker{
0% {
变换:translate3d(0,0,0);
能见度:可见;
}
100% {
转换:translate3d(-100%,0,0);
}
}
.股票代码包{
宽度:100%;
溢出:隐藏;
左:100%;
框大小:内容框;
}
.股票代码{
显示:内联块;
空白:nowrap;
右:100%;
框大小:内容框;
动画计时功能:线性;
动画迭代次数:无限;
动画持续时间:40秒;
动画名称:ticker;
}
.ticker\u项目{
显示:内联块;
填充:02rem;
字号:2rem;
}

占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-
占位符-

问题是如何在自动售票机重新启动前消除20秒的延迟,只使用CSS。一种方法是将包含文本的div放回动画结束之前。例如:

@keyframes animate {
  0% {
     transform: translateX(100vw);
     visibility: visible;
  }
  99% {
     transform : translateX(-100vw);
     visibility: hidden;
  }
  100% {
      transform: translateX(100vw);
      visibility: hidden;
  }
}
然而,为了在下一个动画序列开始之前消除空白,同时容纳可变长度的新闻项目,保持小屏幕上的股票行情可读性,在几乎没有新闻的情况下应对真正的大屏幕,正如其他评论员所提到的,在保持股票行情稳定的同时,需要进行一些计算


如果站点是静态的,则可以提前完成(即不使用Javascript),分别为每个新闻项设置动画,并计算每个新闻项的动画持续时间和动画延迟,但是更改任何内容都需要重新计算,因此使用Javascript的可维护性可能更好。

wdym by static website?前端的Javascript也被认为是静态的。是否需要标记滚动的文本?如果没有,您可以将所有文本放入像title这样的属性中,然后使用带有
content:attr(title)的before&after选择器
基本上将股票代码文本复制为两个元素。现在,您可以将元素彼此相邻,并分别滚动两个克隆,以产生连续循环的幻觉。如果您只有一个简短的单词呢?您希望如何防止右侧空间过大?同样的问题也适用于真正长的。附加到结尾的字符串实际上(显然)是一个克隆的句子。(或多个克隆-以适应元素宽度)这将显著减少暂停。这很好。但是有没有一种方法可以让它像新闻频道中使用的CSS一样完美无瑕?唯一可以让它在没有任何空白的情况下循环的方法是使用js,这样它可以在你的项目离开屏幕向左移动并移动到股票代码的末尾时克隆你的项目,否则,当它完成最后一个并返回到第一个时,您将始终获得该空间。我想说的是,如果你想使用一个自动售票机,最好使用js而不是css,因为你会得到一个恒定的动画速度,而不是取决于自动售票机的长度的速度