1.transition
  语法:transition: property duration timing-function delay;
      transition-property 设置过渡效果的css 属性名称
        语法: transition-property: none | all | property
            none 没有属性会获得过度效果
            all 所有属性都将获得过度效果。
            property 定义应用过度效果css 属性名称列表,列表以逗号分割。
            indent 元素属性名称
      transition-duration 完成过度效果需要多少秒或者毫秒
        语法:transition-duration:time;
            time 规定完成过渡效果需要的花费的时间。默认值是0, 意味着不会有效果
      transition-timing-function 规定速度效果的速度曲线。
        语法: transition-timing-function: linear|ease|ease-in|ease-out|ease-in-out|cubic-bezier(n,n,n,n);
            linear 规定以相同速度开始至结束的过度效果。
            ease 规定慢速度开始,然后边快,然后慢速度结束。
            ease-in 规定以慢速度开始的过度效果。
            ease-out 规定以慢速度结束的过度效果。
            ease-in-out 规定以慢速度开始和结束的过渡效果。
            cubic-bezier(n,n,n,n) 在cubic-bezier中定义自己的值,可能的值是0至1之间的数值。
      transition-delay  定义过度效果何时开始
        语法:transititon-delay: time;
          time 规定在过渡效果开始之前需要等待的时间。

     示例:
      <style>
          .box{width:100px;height:100px;background:red; transition:width 1s ;}
          .box:hover{ background:blue;width:300px;height:150px;}
      </style>
      <div class="box"></div>
      结果:如图

        

     示例:(贝塞尔曲线)
        <style>
          .box{width:100px;height:100px;background:red; transition:5swidth cubic-bezier(0.145,1.295,0.000,1.610);}
          .box:hover{width:500px;}
        </style>
        <div class="box"></div>
    结果:如图

        

    示例:(多种变化一起写)
      <style>
        .box{width:100px;height:100px;background:red; transition:1swidth,2s height,3s background;}
        .box:hover{width:300px;height:150px;background:blue;}
      </style>
      <div class="box"></div>
    结果:如图

      

2.transform
    字母上就是变形,改变的意思,在css3中transform主要包括一下几种,旋转rotate,扭曲skew,缩放scale和移动translate 以及矩阵变形matrix 
        语法:transform : none | <transform-function> [ <transform-function> ]*
          也就是: transform: rotate | scale | skew | translate |matrix;

            none表示不进怎么变换;<transform=function>表示一个或者多个变换函数,以空格分开;
            rotate,scale,translate 三种,但这里需要提醒大家的,以往我们叠加效果都是用逗号(“,”)隔开,

            但transform中使用多个属性时却需要有空格隔开。大家记住了是空格隔开。

          旋转rotate
            通过指定的角度参数对原元素指定一个2D rotation(2D 旋转),需先有transform-origin属性的定义。
                transform-origin定义的是旋转的基点,其中angle是指旋转角度
            如果设置的值为正数表示顺时针旋转,如果设置的值为负数,则表示逆时针旋转。
              如:transform:rotate(30deg):
          移动translate
            移动translate我们分为三种情况:translate(x,y)水平方向和垂直方向同时移动(也就是X轴和Y轴同时移动);translateX(x)仅水平方向移动(X轴移动translateY(Y)仅垂直方向移动(Y轴移动)

          缩放scale
           缩放scale和移动translate是极其相似,他也具有三种情况:scale(x,y)使元素水平方向和垂直方向同时缩放(也就是X轴和Y轴同时缩放);scaleX(x)元素仅水平方向缩放(X轴缩放);
              scaleY(y)元素仅垂直方向缩放(Y轴缩放),但它们具有相同的缩放中心点和基数,
            其中心点就是元素的中心位置,缩放基数为1,如果其值大于1元素就放大,反之其值小于1,元素缩小。

          扭曲skew
             扭曲skew和translate,secale skew(x,y)使元素在水平和垂直方向同时扭曲(X轴和Y轴同时按一定的角度值进行扭曲变形);skewX(x)仅使元素在水平方向扭曲变形(X轴扭曲变形);

              skewY(y)仅使元素在垂直方向扭曲变形(Y轴扭曲变形)

          矩阵matrix
              matrix(<number>, <number>, <number>, <number>, <number>,
                <number>) 以一个含六值的(a,b,c,d,e,f)
             变换矩阵的形式指定一个2D变换,相当于直接应用一个[a b c d e f]变换矩阵。就是基于水平方向(X轴)和垂
              直方向(Y轴)重新定位元素,改变元素的基点 transform-origin他的主要作用就是让我们在进行transform动作之前可以改变元素的基点位置,
              因为我们元素默认基点就是其中心位置,换句话说我们没有使用transform-origin改变元素基点位置的情况下,
              transform进行的rotate,translate,scale,skew,matrix等操作都是以元素自己中心位置进行变化的。

        示例: (旋转)
          <style>
            .box{width:100px;height:100px;background:red;margin:100px auto 0; transition:2s;}
            .box:hover { -webkit-transform:rotate(45deg);}
          </style>
          <div class="box">111</div>
        结果:如图

          

        示例:(位移)
          <style>
            .box{width:100px;height:100px;background:red;margin:100px auto 0; transition:2s;}
            .box:hover{-webkit-transform:translate(-100px,200px);}
          </style>
          <div class="box">111</div>
        结果:元素的位置发生变化。

        示例:(缩放)
          <style>
            .box{width:100px;height:100px;background:red;margin:100px auto 0; transition:2s;}
            .box:hover{webkit-transform:scale(2);}
          </style>
          <div class="box">111</div>
        结果:如图

          

        示例:(扭曲)
            <style>
              .box{width:80px;height:80px;background:red;margin:100px auto 0; transition:2s;}
              .box:hover{-webkit-transform:skewX(45deg);}
            </style>
            <div class="box">111</div>
        结果:如图

          

        示例:(矩阵)
            <style>
                .box{width:80px;height:80px;background:red;margin:100px auto 0; transition:2s;}
                .box:hover{-webkit-transform:matrix(0.5,0.38,-0.38,2,0,0);}
            </style>
            <div class="box">111</div>
        结果:如图

          

        demo 示例:
          <style id="css">
              #wrap{width:200px;height:200px;border:2px solid #000; margin:100px auto; border-radius:50%; position:relative;}
              #wrap ul{margin:0;padding:0;height:200px; position:relative; list-style:none;}
              #wrap ul li{ width:2px;height:6px;background:#000; position:absolute;left:99px;top:0; -webkit-transform-origin:center 100px;}
              #wrap ul li:nth-of-type(5n+1){ height:12px;}
              #hour{width:6px;height:45px;background:#000; position:absolute;left:97px;top:55px;-webkit-transform-origin:bottom;}
              #min{width:4px;height:65px;background:#999; position:absolute;left:98px;top:35px;-webkit-transform-origin:bottom;}
              #sec{width:2px;height:80px;background:red; position:absolute;left:99px;top:20px;-webkit-transform-origin:bottom;}
              .ico{width:20px;height:20px;background:#000; border-radius:50%; position:absolute;left:90px;top:90px;}
          </style>
          <div id="wrap">
            <ul id="list">
            </ul>
            <div id="hour"></div>
            <div id="min"></div>
            <div id="sec"></div>
            <div class="ico"></div>
          </div>
          <script>
              var oList=document.getElementById("list");
              var oCss=document.getElementById("css");
              var oHour=document.getElementById("hour");
              var oMin=document.getElementById("min");
              var oSec=document.getElementById("sec");
              var aLi="";
              var sCss="";
              for(var i=0;i<60;i++)
                {
                  sCss+="#wrap ul li:nth-of-type("+(i+1)+"){ -webkit-transform:rotate("+i*6+"deg);}";
                  aLi+="<li></li>"
                }
              oList.innerHTML=aLi;
              oCss.innerHTML+=sCss;
              toTime();
              setInterval(toTime,1000);
              function toTime()
                  {
                    var oDate=new Date();
                    var iSec=oDate.getSeconds();
                    var iMin=oDate.getMinutes()+iSec/60;
                    var iHour=oDate.getHours()+iMin/60;
                    oSec.style.WebkitTransform="rotate("+iSec*6+"deg)";
                    oMin.style.WebkitTransform="rotate("+iMin*6+"deg)";
                    oHour.style.WebkitTransform="rotate("+iHour*30+"deg)";
                };
            </script>
          结果:如图

          

css3 过渡和2d变换——回顾的更多相关文章

  1. IT兄弟连 HTML5教程 CSS3属性特效 2D变换1

    通过CSS3转换,能够对元素进行移动.缩放.转动.拉长或拉伸.它如何工作?转换是使元素改变形状.尺寸和位置的一种效果.CSS3转换包括2D转换和3D转换,本小结我们来了解2D变换的转换方法. 转换属性 ...

  2. CSS3之过渡及2D变换

    transition过渡 transition-duration:; 运动时间 transition-delay:; 延迟时间 transition-timing-function:; 运动形式 ea ...

  3. IT兄弟连 HTML5教程 CSS3属性特效 2D变换2

    3  scale() 方法 通过scale() 方法,元素的尺寸会增加或减少,根据给定的宽度(X轴)和高度(Y轴)参数.缩放scale()函数让元素根据中心原点对对象进行缩放.默认值是1,因此0.01 ...

  4. 牛逼的css3:动态过渡与图形变换

    写css3的属性的时候,最好加上浏览器内核标识,进行兼容. -ms-transform:scale(2,4); /* IE 9 */ -moz-transform:scale(2,4); /* Fir ...

  5. CSS3 2D 变换

    CSS2D transform 表示2D变换,目前获得了各主流浏览器的支持,是CSS3中具有颠覆性的特征之一,可以实现元素的位移.旋转.倾斜.缩放,甚至支持矩阵方式,可以取代大量之前只能靠Flash才 ...

  6. css过渡和2d详解及案例

    css过渡和2d详解及案例(案例在下方,不要着急) 本文重点: 1.在2D变化使用过程中,有些需求需要两种或两种以上的变化同时使用, 值得注意的是尽量把位移变化放在最前面,把其他变化放在最后面,属性值 ...

  7. CSS3过渡、变形和动画

    1.CSS3过渡 所谓CSS3过渡,就是使用CSS3让元素从一种状态慢慢转换到另一种状态.如鼠标的悬停状态就是一种过渡.如下例子: #content a{     text-decoration: n ...

  8. CSS3学习(CSS3过渡、CSS3动画)

    CSS3过渡:transition属性--专门应对颜色.长度.宽度.位置等变化的过渡 通过CSS3,我们可以在不使用Flash和JavaScript的情况下,为当前某元素从某样式改变为某样式的时候添加 ...

  9. CSS3 过渡

    通过 CSS3,我们可以在不使用 Flash 动画或 JavaScript 的情况下,当元素从一种样式变换为另一种样式时为元素添加效果. 请把鼠标移动到右侧的元素上: 浏览器支持 Internet E ...

随机推荐

  1. Struts2 JSP中将list,set ,Map传递到Action然后遍历(三十五) - 雲淡風輕 - ITeye技术网站

    1.使用Strut2的的集合对象:在jsp初始化action中的list然后提交到action2.使用Struts标签,实现多个用户同时注册(注意属性配置文件)3.pojo package com.s ...

  2. AWK用法入门详解

    简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再 ...

  3. (中等) POJ 1703 Find them, Catch them,带权并查集。

    Description The police office in Tadu City decides to say ends to the chaos, as launch actions to ro ...

  4. 25个Linux性能监控工具

    一段时间以来,我们在网上向读者介绍了如何为Linux以及类Linux操作系统配置多种不同的性能监控工具.在这篇文章中我们将罗列一系列使用最频繁的性能监控工具,并对介绍到的每一个工具提供了相应的简介链接 ...

  5. Android SQLITE数据类型

    2011-6-24 15:14:00来源:Sql   SQLITE数据类型 SQLite与其他常见的DBMS的最大不同是它对数据类型的支持.其他常见的DBMS通常支持强类型的数据,也就是每一列的类型都 ...

  6. transform和transition

    作者:zccst 例如:图片墙  .另外还有,便签墙 使用的样式: 1,正常情况下 ul#index_cards li {     background: url("../images/ca ...

  7. 在IOS应用中从竖屏模式强制转换为横屏模式

    http://www.cnblogs.com/mrhgw/archive/2012/07/18/2597218.html 在 iPhone 应用里,有时我们想强行把显示模式从纵屏改为横屏(反之亦然), ...

  8. iOS 8自定义动画转场上手指南

    原文:http://www.cocoachina.com/ios/20150126/11011.html iOS 5发布的时候,苹果针对应用程序界面的设计,提出了一种全新的,革命性的方法—Storyb ...

  9. linux命令学习-3-sysctl

    sysctl 内核变量配置 Usage: sysctl [options] [variable[=value] ...]   NAME sysctl - configure kernel parame ...

  10. pcommlite串口通讯库使用

    MFC下串口编程使用最多的两种方法是读取注册表和使用mscomm组件,都有着或多或少的缺陷,调用系统SDK比较麻烦,而MSCOMm组件最多支持16个串口,串口号大于16的时候无法打开,遇到这种情况,可 ...