最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • CSS3的过渡和动画

    正文概述 掘金(用户4561726307214)   2021-03-26   460

    过渡和动画都是CSS3的重要部分,今天有时间,了解些相关内容并记录下。 在开始之前,首先看看CSS3的转化。

    转化

    CSS3的转化分为以下几种:

    • translate 移动
    • rotate 旋转
    • scale 缩放
    • skew 倾斜
    • matrix 混合

    每种转化都还有对应的3d版本

    注意:闭合的内联元素不支持转化,过渡和动画:如<span>、<small>、<i>等。可以通过添加样式 display: inline-block 或 display: block 来转化成块级元素。

    translate 移动

    translate()方法,根据左(X轴)和顶部(Y轴)位置给定的参数,从当前元素位置移动。

    span {
        display: inline-block;
        transform: translate(50px,100px); /* 向下移动50像素,向右移动100像素 */
        -ms-transform: translate(50px,100px); /* IE 9 */
        -webkit-transform: translate(50px,100px); /* Safari and Chrome */
    }
    

    rotate 旋转

    rotate()方法,在一个给定度数顺时针旋转的元素。负值是允许的,这样是元素逆时针旋转。

    i {
        display: block;
        transform: rotate(30deg); /* 顺时针旋转30度,负数为逆时针旋转 */
        -ms-transform: rotate(30deg); /* IE 9 */
        -webkit-transform: rotate(30deg); /* Safari and Chrome */
    }
    

    scale 缩放

    scale()方法,该元素增加或减少的大小,取决于宽度(X轴)和高度(Y轴)的参数:

    div {
        display: inline; /*这样设置是缩放不生效 */
        transform: scale(2,3); /*长扩大2倍,宽扩大3倍,小于1的小数为缩小 */
        -ms-transform:scale(2,3); /* IE 9 */
        -webkit-transform: scale(2,3); /* Safari */
        transform: scale(2,3); /* 标准语法 */
    }
    

    skew 倾斜

    skew() 包含两个参数值,分别表示X轴和Y轴倾斜的角度,如果第二个参数为空,则默认为0,参数为负表示向相反方向倾斜。(想象成一根直的柱子,被推歪了...)

    • skewX();表示只在X轴(水平方向)倾斜。(横着推歪了...)
    • skewY();表示只在Y轴(垂直方向)倾斜。(从上下压给推歪了...)
    div {
        transform: skew(30deg,20deg);
        -ms-transform: skew(30deg,20deg); /* IE 9 */
        -webkit-transform: skew(30deg,20deg); /* Safari and Chrome */
    }
    

    matrix 混合

    matrix()方法和2D变换方法合并成一个。 matrix 方法有六个参数,包含旋转,缩放,移动(平移)和倾斜功能。

    div {
        transform:matrix(0.866,0.5,-0.5,0.866,0,0);
        -ms-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* IE 9 */
        -webkit-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* Safari and Chrome */
    }
    

    截图总结

    2D 版 CSS3的过渡和动画

    transition 过渡

    CSS3中,我们为了添加某种效果可以从一种样式转变到另一个的时候,无需使用Flash动画或JavaScript。

    过渡和动画的区别

    过渡和动画都可以改变元素的样式,但他们中间也有些不同:

    • 过渡针对元素的样式属性,从一种样式转变到另一种,样式按贝塞尔曲线随时间变化,动画针对元素本身,按关键帧改变元素的样式效果
    • 过渡比动画简单,当控制的效果也更粗糙,动画更消耗性能,但可以做出更复杂的效果。

    总的来说:一般简单的样式使用过渡,实在需要复杂的效果再考虑使用动画

    transition 属性

    CSS3的过渡和动画

    div {
        transition-property: width; /*可以使用转化更好的过渡 */
        transition-duration: 1s;
        transition-timing-function: linear;
        transition-delay: 2s;
        /* Safari */
        -webkit-transition-property:width;
        -webkit-transition-duration:1s;
        -webkit-transition-timing-function:linear;
        -webkit-transition-delay:2s;
    }
    
    /*简写 */
    div {
        transition: width 1s linear 2s;
        /* Safari */
        -webkit-transition:width 1s linear 2s;
    }
    

    transition 过渡曲线

    CSS3的过渡和动画

    animate 动画

    CSS3,我们可以创建动画,它可以取代许多网页动画图像,Flash动画,和JAVAScripts。 动画属性: CSS3的过渡和动画

    动画制作过程

    1.通过@keyframes规则创建动画

    /*创建动画,字体颜色由红变蓝 */
    @keyframes changeColor { 
        from { color: red; }
        to { color: blue; }
    }
    

    2.元素绑定动画

    span {
        display: inline-block; /*内联元素要转成block元素 */
        animation: changeColor 1s linear; /*绑定动画,并设置动画时间和执行曲线 */
    }
    

    动画还可以使用百分比来更加精细的控制动画流程:

    @keyframes changeColor {
        0%   {color: red;}
        25%  {color: yellow;}
        50%  {color: green;}
        75%  {color: pickle;}
        100% {color: blue;}
    }
    
    /* Safari 与 Chrome */
    @-webkit-keyframes changeColor {
        0%   {color: red;}
        25%  {color: yellow;}
        50%  {color: green;}
        75%  {color: pickle;}
        100% {color: blue;}
    }
    

    起源地下载网 » CSS3的过渡和动画

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元