CSS3动画结合伪元素实现边框滚动效果

  今天和大家分享一个利用CSS3的animation属性完成的一个边框动画效果。大家都知道,CSS3给我们提供了@keyframes关键字,能让我们在网页中轻松插入动画。一个简单的动画插入,结构如下:

 1 <style>
 2      .wrap{
 3          position: absolute;
 4          left: 200px;
 5          width: 200px;
 6          height: 200px;
 7          animation: run 2s linear infinite;   /*动画名 时间 速度 动画次数*/
 8          background-color: rgb(87, 182, 9);
 9      }
10      @keyframes run{   /* @keyframe 关键字声明动画 */
11        from{  /* 从什么样子 */
12           left: 200px;
13        }
14        to{
15           left: 500px; /*变成什么样子*/
16         }
17      }
18 </style>
19  <body>
20    <div class="wrap"></div>
21  </body>

  效果如下:

  除了用from to 这种形式之外,我们还可以用百分比,更加细化各个阶段的表现样式,例子如下:

<head>  <style>
        .around{
            position: relative;
            width:200px;
            height: 300px;
            margin:50px auto;
            background-color:#000005;
            cursor: pointer;
        }
        .around::before,.around::after{
            content:‘‘;
            position: absolute;
            border-style:solid;
            animation: move 5s linear infinite;
            opacity: 1;
        }
        .around::after{
            animation-delay: -2.5s;
        }
        @keyframes move{
            0%{
                top:-21px;
                left:-21px;
                width: 240px;
                height: 0;
                border-width:1px 0 0 0;
                border-color:#a21;
            }
            25%{
                top:-21px;
                left:-21px;
                width:0;
                height:340px;
                border-width:0 0 0 1px;
                border-color:rgba(40, 201, 40, 0.904);
            }
            50%{
                top:318px;
                left:-21px;
                width: 240px;
                height: 0;
                border-width:0 0 1px 0;
                border-color:rgb(204, 74, 14);
            }
            75%{
                top:-21px;
                left:218px;
                width: 0;
                height: 340px;
                border-width:0 1px 0 0;
                border-color:rgb(160, 170, 17);
            }
            100%{
                top:-21px;
                left:-21px;
                width: 240px;
                height: 0;
                border-width:1px 0 0 0;
                border-color:rgb(224, 53, 224);
            }
        }
    </style>
</head>
<body>
    <div class="around"></div>
</body>

  效果如下:

  

  这样,我们轻松实现了边框滚动效果,只用了一个div标签,很简单吧

原文地址:https://www.cnblogs.com/wk-ba/p/10340827.html

时间: 2024-08-02 01:07:40

CSS3动画结合伪元素实现边框滚动效果的相关文章

CSS3之伪元素选择器和伪类选择器

伪类选择器,和一般的DOM中的元素样式不一样,它并不改变任何DOM内容.只是插入了一些修饰类的元素,这些元素对于用户来说是可见的,但是对于DOM来说不可见.伪类的效果可以通过添加一个实际的类来达到. a:link|a:visited|a:hover|a:active 在 CSS 定义中,a:hover 必须被置于 a:link 和 a:visited 之后,才是有效的,a:active 必须被置于 a:hover 之后,才是有效的. 由于状态是动态变化的,所以一个元素达到一个特定状态时,它可能得

伪类与伪元素

1.伪类与伪元素 先说一说为什么css要引入伪元素和伪类,以下是css2.1 Selectors章节中对伪类与伪元素的描述: CSS introduces the concepts of pseudo-elements and pseudo-classes  to permit formatting based on information that lies outside the document tree. 直译过来就是:css引入伪类和伪元素概念是为了格式化文档树以外的信息.也就是说,伪

关于css中伪类及伪元素的总结

css中的伪类和伪元素总是混淆,今天参考了很多资料,也查看了部分文档,现将伪类及伪元素总结如下: 一.由来: 伪类和伪元素的引入都是因为在文档树里有些信息无法被充分描述,比如CSS没有“段落的第一行”.“文章首字母”之类的选择器,而这在一些出版场景里又是必须的,这一情况下出现的.引用标准中的话: CSS introduces the concepts of pseudo-elements and pseudo-classes to permit formatting based on infor

css伪类选择器详细解析及案例使用-----伪元素

伪元素:(css3中将所有伪元素前变成了两个冒号,即::first-letter.::first-line.::before.::after.::selection.目的是为了区分伪元素与伪类.对于IE6~IE8,仅支持单冒号写法)1.::first-letter  :用来选择文本块的第一个首字母.2.::first-line :用来匹配元素的第一行文本.3.::befor 和 ::after :创建一个作为当前元素子元素的伪元素.常通过 content 属性来为一个元素添加修饰性的内容. 此元

CSS伪类和伪元素

一.伪类 CSS伪类用于向某些选择器添加特殊的效果,在W3C规范中,CSS伪类有如下几个: :active:向被激活的元素添加样式(激活是指点击鼠标那一下) :focus:向拥有键盘输入焦点的元素增加样式 :hover:当鼠标悬浮在元素上方时,向元素增加样式 :link:向未被访问的链接增加样式 :visited:向已被访问的链接增加样式 :first-child:向元素的第一个子元素增加样式 :lang:向带有指定lang属性的元素增加样式 提示: 1.伪类名称对大小写不敏感.比如:ACTIV

伪元素 first-letter

::after, ::before, ::backdrop, ::first-letter,::first-line, ::selection(css3)是伪元素, :active, :focus, :checked等等被称为伪类 要想::first-letter(:first-letter)伪元素生效,是需要一定的条件的. 1. 元素的display计算值必须是 block, inline-block, table-cell, list-item或者table-caption,其他所有disp

伪元素和伪类

相同:都用于给某些选择器添加特殊的效果区别:伪类的效果可以通过添加一个实际的类来达到,而伪元素的效果则需要通过添加一个实际的元素才能达到,这也是为什么他们一个称为伪类,一个称为伪元素的原因.下面罗列写常见的伪类与伪元素--伪类种类:伪元素种类:CSS3要求对伪元素使用两个冒号以便与伪类进行区别.但因为兼容性的问题,所以现在大部分还是统一的单冒号,但是抛开兼容性的问题,我们在书写时应该尽可能养成好习惯,区分两者.

使用伪元素before和after写出来的神奇效果

大家都知道before和after能写出很多很好的效果,今天偶然看到一个觉得挺好的,就顺便写了一下,复习了一下伪元素以及和伪类的区别,domo地址:http://codepen.io/tianzi77/pen/KpeKXz 伪类和伪元素看似简单,很多开发者并没有引起注意,先看看伪元素和伪类的区别吧. 标准的定义: CSS 引入伪类和伪元素的概念是为了实现基于文档树之外的信息的格式化. 伪类有::first-child :link:vistited,:hover,:active,:focus,:l

应用 CSS3 动画实现12种风格的通知提示

今天我们想分享几个简单的款式的网站通知效果.有很多的方式来呈现消息给用户:从经典的咆哮般的通知到窗口顶部的通知栏.各个网站的通知样式和效果千篇一律,难得出现创意的通知效果.这里是实现一个应用 CSS3 动画实现各种风格的通知提示. 在线演示      立即下载 您可能感兴趣的相关文章 网站开发中很有用的 jQuery 效果[附源码] 分享35个让人惊讶的 CSS3 动画效果演示 十分惊艳的8个 HTML5 & JavaScript 特效 Web 开发中很实用的10个效果[源码下载] 12款经典的