• Transitions功能使用方法

在css3中,transitions功能通过将元素的某个属性从一个属性值在指定的时间内平滑过渡到另一个属性值来实现动画功能,可通过transitions属性来使用transitions功能。

transitions属性的使用方法如下所示:

transitions:property durantion timing-function

其中property表示对哪个属性进行平滑过渡,duration表示在多长时间内完成属性值的平滑过渡,timing-function表示通过什么方法来进行平滑过渡。例子如下:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Transitions功能的使用示例</title>
<style>
div{
background-color: #ffff00;
-webkit-transition: background-color 1s linear;
-moz-transition: background-color 1s linear;
-o-transition: background-color 1s linear;
}
div:hover{
background-color: #00ffff;
}
</style>
</head>
<body>
<div>示例文字</div>
</body>
</html>

在CSS3中,还有另外一种使用transitions功能的方法,就是将transitions属性中的三个参数改写成transition-property属性、transition-duration属性、transition-timing-function属性,这三个属性的含义及属性值的指定方法与transitions属性中的三个参数的含义及指定方法完全相同。

  • 使用transitions功能同时对多个属性值进行平滑过渡多个属性值

可以使用transitions功能同时对多个属性值进行平滑过渡,例子如下:

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title>使用transitions功能实现多个属性的平滑过渡</title>

    <style>

        div {

            background-color: #ffff00;

            color: #000000;

            width: 300px;

            -webkit-transition: background-color 1s linear, color 1s linear, width 1s linear;

            -moz-transition: background-color 1s linear, color 1s linear, width 1s linear;

            -o-transition: background-color 1s linear, color 1s linear, width 1s linear;

        }

        div:hover {

            background-color: #003366;

            color: #ffffff;

            width: 400px

        }

    </style>

</head>

<body>

<div>示例文字</div>

</body>

</html>
  • Animations功能的使用方法

Animations功能与transitions功能相同,都是通过改变元素的属性值来实现动画效果的,它们的区别在于:使用transitions功能时只能通过指定属性的开始值与结束值,然后在这两个属性值之间进行平滑过渡的方式来实现动画效果,因此不能实现比较复杂的动画效果;例子如下:

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title>animations功能的使用示例</title>

    <style>

        div {

            background-color: red;

        }

        @-webkit-keyframes mycolor {

            0% {

                background-color: red;

            }

            40% {

                background-color: darkblue;

            }

            70% {

                background-color: yellow;

            }

            100% {

                background-color: red;

            }

        }

        div:hover{

            -webkit-animation-name:mycolor;

            -webkit-animations-duration:5s;

            -webkit-animation-timing-function: linear;

            animation-name:mycolor;

            animation-duration: 5s;

            animation-timing-function: linear;

        }

    </style>

</head>

<body>

<div>示例文字</div>

</body>

</html>
  • 实现多个属性值同时改变的动画
<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title>让多个属性同时变化</title>

    <style>

       div{

           position: absolute;

           background-color:yellow;

           top: 100px;

           width: 500px;

       }

        @keyframes mycolor {

            0%{

                background-color: red;

                transform: rotate(0deg);

            }

            40%{

                background-color: darkblue;

                transform: rotate(30deg);

            }

            70%{

                background-color: yellow;

                transform: rotate(-30deg);

            }

            100%{

                background-color: red;

                transform: rotate(0deg);

            }

        }

        div:hover{

            animation-name:mycolor;

            animation-duration: 5s;

            animation-timing-function: linear;

        }

    </style>

</head>

<body>

<div>示例文字</div>

</body>

</html>

可以通过animation-iteration-count属性来指定动画的播放次数,也可以通过对该属性指定infinite属性值让动画不停地循环播放。

  • 实现动画的方法

Animations功能中实现动画的方法:

linear 在动画开始时到结束时以同样的速度进行改变

ease-in 动画开始时速度很慢,然后速度沿曲线值进行加快

ease-out 动画开始时速度很快,然后速度沿曲线值进行放慢

ease   动画开始时速度很慢,然后速度沿曲线值进行加快,然后沿曲线值放慢

ease-in-out 动画开始时速度很慢,然后速度沿曲线值进行加快,然后再沿曲线值放慢

  • 实现网页的淡入效果
<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <title>实现网页淡入效果的示例</title>

    <style>

     @keyframes fadein {

         0%{

             opacity:0;

             background-color: white;

         }

         100%{

             opacity: 1;

             background-color: white;

         }

     }

        body{

            animation-name:fadein;

            animation-duration: 5s;

            animation-timing-function: linear;

            animation-iteration-count: 1;

        }

    </style>

</head>

<body>

<div>示例文字</div>

</body>

</html>

CSS3学习系列之动画的更多相关文章

  1. [CSS3] 学习笔记-CSS动画特效

    在CSS3中,出现了很多出彩的效果,例如2D.3D以及过度.动画和多列等.这些效果为页面设计添加了很多的可选设计. 1.2D.3D转换 转换,是使元素改变尺寸.形状.位置的一种效果:通过CSS3转换, ...

  2. css3学习系列之选择器(一)

    CSS3中的属性选择器 [att*=val]属性选择器:[att*=val]属性选择器的含义是:如果元素att表示的属性之属性值中包含用val指定的字符的话,则该元素使用这个样式. [att^=val ...

  3. CSS3学习系列之选择器(二)

    first-child选择器和last-child选择器 first-child指定第一个元素.last-child指定最后一个子元素. 例如: <!DOCTYPE html> <h ...

  4. CSS3学习系列之选择器(四)

    使用选择器来插入文字 css2中,使用before选择器在元素前面插入内容,使用after选择器在元素后面插入内容,在选择器的content属性中定义要插入的内容.将content属性值设定为none ...

  5. CSS3学习系列之字体

    给文字添加阴影 在CSS3中,可以使用text-shadow属性给页面上的文字添加阴影效果.text-shadow属性是在css2中定义的,在css2.1中删除,在css3的text模块中有恢复了,用 ...

  6. CSS3学习系列之盒样式(一)

    盒的基本类型 在css中,使用display属性来定义盒的类型,总体上来说,css中的盒分为block类型与inline类型 inline-block类型 inline-block类型是在css2.1 ...

  7. CSS3学习系列之盒样式(二)

    text-overflow属性 当通过把overflow属性的属性值设定为"hidden"的方法,将盒中容纳不下的内容隐藏起来时,如果使用text-overflow属性,可以在盒的 ...

  8. CSS3学习系列之背景相关样式(一)

    新增属性: background-clip:指定背景的显示范围 background-origin:指定绘制背景图像时的起点 background-size:指定背景中图像的尺寸 background ...

  9. CSS3学习系列之背景相关样式(二)

    在border-radius属性中指定两个半径 在border-radius属性中,可以指定两个半径,指定方法如下所示: border-radius:40px 20px; 针对这种情况,各种浏览器的处 ...

随机推荐

  1. Eclipse设置问题:字体大小、修改注释内容、修改快捷键

    一.设置字体大小,看下图,包括了设计代码字体大小和控制台输出字体大小 二.修改注释内容 选择window---->>preferences 选择Java---->>code s ...

  2. 安卓TextView限定行数最大值,点击按钮显示所有内容

    问题展示 如上图所示,在普通的TextView中,要求: 最多显示3行 超过三行显示展开按钮 且点击展开按钮显示完整内容 这个需求看似简单,但解决起来会遇到两个较为棘手的问题:1,如何判断是否填满了前 ...

  3. kotlin 语言入门指南(三)--编码习惯

    这章主要讲当前 kotlin 的一些编码习惯. 命名 如无疑问,kotlin 的命名风格与以下的java风格一样: --驼峰命名法(不要使用下划线) --类名首字母大写 --方法和属性名首字母小写 - ...

  4. [大数据]-Logstash-5.3.1的安装导入数据到Elasticsearch5.3.1并配置同义词过滤

    阅读此文请先阅读上文:[大数据]-Elasticsearch5.3.1 IK分词,同义词/联想搜索设置,前面介绍了ES,Kibana5.3.1的安装配置,以及IK分词的安装和同义词设置,这里主要记录L ...

  5. Bash+R: howto pass parameters from bash script to R(转)

    From original post @ http://analyticsblog.mecglobal.it/analytics-tools/bashr/ In the world of data a ...

  6. kafka 0.10.2 cetos6.5 集群部署

    安装 zookeeper http://www.cnblogs.com/xiaojf/p/6572351.html安装 scala http://www.cnblogs.com/xiaojf/p/65 ...

  7. C语言之字符串

    什么是字符串:使用双引号包含的字符序列. 简单的字符串"hello world" 一个'h'是一个字符 很多个字符组合在一起就是字符串了 字符串与字符数组 在C语言中没有专门的字符 ...

  8. Windows 7 蓝屏代码大全 & 蓝屏全攻略

    关于Windows 7.Vista等系统的蓝屏,之前软媒在Win7之家和Vista之家都有很多文章讨论过,但是都是筛选的常见的一些问题,今天这个文章是个大全,希望大家看着别头痛,文章收藏下来以后待查即 ...

  9. Java对于内存的需要知道的知识

    内存 内存大家都知道(当然不是硬盘啊).与c.c++相比呢,Java在内存管理的方面一个优越之处就是我们不用显式的去对对象进行内存的分配和内存的回收,可能有人会着迷于对内存使用分配的这种快感,但是随着 ...

  10. sublime text 快捷收集

    1. 文件快速导航: 这是sublime上面很好用的功能之一,ctrl+p可以调出窗口,菜单上的解释是gotoanythings ,确实如其所言,调出窗口后,直接输入关键字,可以在已打开的项目文件夹中 ...