当前位置: 首页 > 面试题库 >

CSS3动画中的虚线边框动画

郜昊苍
2023-03-14
问题内容

我想在我的WP博客中添加它。这样,每个新的div帖子的边框上都会有此动画。但是问题在于它在SVG中。无论如何,我可以在不使用SVG的情况下使此动画工作,并且我也不想使用javascript。

可以说代码是:

.go {

  width: 900px;

  height: 200px;

  border: 8px dashed;

}


<div class="go"></div>

问题答案:

CSS可以做到这一点,并且在使用多个背景并使用动画更改其位置时非常简单。

.border {

  height: 100px;

  width: 200px;

  background: linear-gradient(90deg, blue 50%, transparent 50%), linear-gradient(90deg, blue 50%, transparent 50%), linear-gradient(0deg, blue 50%, transparent 50%), linear-gradient(0deg, blue 50%, transparent 50%);

  background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;

  background-size: 16px 4px, 16px 4px, 4px 16px, 4px 16px;

  background-position: 0px 0px, 212px 116px, 0px 116px, 216px 0px;

  padding: 10px;

  transition: background-position 2s;

}

.border:hover{

    background-position: 212px 0px, 0px 116px, 0px 0px, 216px 116px;

}


<script src="https://cdnjs.cloudflare.com/ajax/libs/prefixfree/1.0.7/prefixfree.min.js"></script>

<div class="border">Some text</div>

这是一个页面加载后边框连续不断移动的示例。

.border {

  height: 100px;

  width: 200px;

  background: linear-gradient(90deg, blue 50%, transparent 50%), linear-gradient(90deg, blue 50%, transparent 50%), linear-gradient(0deg, blue 50%, transparent 50%), linear-gradient(0deg, blue 50%, transparent 50%);

  background-repeat: repeat-x, repeat-x, repeat-y, repeat-y;

  background-size: 15px 4px, 15px 4px, 4px 15px, 4px 15px;

  background-position: 0px 0px, 200px 100px, 0px 100px, 200px 0px;

  padding: 10px;

  animation: border-dance 4s infinite linear;

}

@keyframes border-dance {

  0% {

    background-position: 0px 0px, 300px 116px, 0px 150px, 216px 0px;

  }

  100% {

    background-position: 300px 0px, 0px 116px, 0px 0px, 216px 150px;

  }

}


<script src="https://cdnjs.cloudflare.com/ajax/libs/prefixfree/1.0.7/prefixfree.min.js"></script>

<div class="border">Some text</div>

归功于web-tiki,它有助于修复最初在动画每个循环结束时出现的轻微失真。



 类似资料:
  • #animated_div{ width:76px; height:47px; background:#92B901; color:#ffffff; position:relative; font-weight:bold; font-size:20px; padding:10px; animation:animated_div 5s 1;

  • 问题内容: 我需要在某些文本上执行一系列动画处理,并且我打算使用CSS3。我的计划是使一些文本缓慢地在屏幕上向下移动,并到达屏幕的特定部分后,某些单词将被突出显示,最终文本将继续在屏幕上向下移动并消失,为进一步的文本留出空间。 我的问题是,“链接”这些动画的最佳方法是什么。我是否应该有一个用于向下移动屏幕的动画,一个用于突出显示文本的单独动画以及一个用于向下移动屏幕其余部分的动画?然后,是否应该将

  • 动画是进行形状变化和用元素创建动作的过程。 @keyframes 关键帧将控制CSS3中的中间动画步骤。 带左动画的关键帧示例 - @keyframes animation { from {background-color: pink;} to {background-color: green;} } div { width: 100px; height: 100px;

  • 我有个小酒吧。在悬停任何一个菜单项时,我想要获得与这里完全相同的边框底部动画效果(查看左上角的边框或菜单项在悬停时是如何动画的) 我试图在stackoverflow和google上找到类似的问题,但没有找到任何有用的东西。 任何帮助都是非常感谢的。

  • 问题内容: 无法使此动画图像正常工作,它应该进行360度旋转。 我猜下面的CSS有点问题,因为它保持静止。 问题答案: 这是 正确的动画CSS: 有关代码的一些注意事项: 您已将关键帧嵌套在规则中,这是不正确的 不适用于绝对定位的元素 看看caniuse:IE10不需要前缀

  • 问题内容: 我已经回顾了很多演示,并且不知道为什么我无法使CSS3自旋起作用。我正在使用最新的稳定版Chrome。 问题答案: 要使用CSS3动画,您还必须定义实际的动画关键帧( 您将其命名为) 配置了动画的时间后,您需要定义动画的外观。这是通过使用规则建立两个或更多关键帧来完成的。每个关键帧描述动画元素在动画序列中给定时间应如何呈现。