美文网首页
CSS变形与动画

CSS变形与动画

作者: Mr_J316 | 来源:发表于2019-04-17 09:02 被阅读0次

    2019-04-15

    2D变形

    旋转效果: transform:rotate

    transform:rotate(7deg);/*沿中心点旋转7度*/
    transform:rotateX(7deg);/*沿X轴旋转7度*/
    transform:rotateY(7deg);/*沿Y轴旋转7度*/
    transform:rotate3D(1,1,1,7deg);/*3D旋转7度,x、y、z为三维向量,沿该轴转动则为1,否则为0。最后一个参数是旋转的角度*/
    

    扭曲效果: transform:skew

    设置元素扭曲变形。第一个参数是水平方向扭曲角度;第二个参数是垂直方向扭曲角度(可选),如果没有设置则和X轴一样。

    transform:skew(15deg,25deg);

    注意:rotate函数只是旋转,而skew函数可以使元素变形。

    缩放效果: transform:scale

    可以使用倍数关系进行尺寸缩放控制。

    transform:scale(1.2);

    位移效果: transform:translate

    定义元素位移。第一个参数设置水平偏移;第二个参数设置垂直偏移。

    transform:translate(30px,30px);

    CSS动画

    使用transition属性实现过渡效果

    <style type="text/css">
       h1{
            width: 300px;
            margin: 300px 300px;
            background-color: blueviolet;
            transition: transform 1s;
        }
        h1:hover{
            transform: scale(1.2) rotate(180deg);
        }
    </style>
    <body>
        <h1>大会结束</h1>
    </body>
    <!-- 在一秒内将h1旋转180度放大两倍 -->
    

    使用@keyframes制作自定义动画

    @keyframes(关键帧)属性可以在不使用JavaScript的情况下实现元素的动画效果。

    用法1:

    @keyframes 动画名称{
        from {属性名:属性值}
        to {属性名:属性值}
    }
    

    用法2:

    @keyframes 动画名称{
        0%   {属性名:属性值}
        25%  {属性名:属性值}
        50%  {属性名:属性值}
        75%  {属性名:属性值}
        100% {属性名:属性值}
    }
    

    @keyframes动画必须通过animation属性调用

    animation:动画名称 动画执行时间 动画循环次数(infinite无限循环) 执行速度;

    执行速度参数:

    描述
    linear 动画从头到尾的速度是相同的。
    ease 默认。动画以低速开始,然后加快,在结束前变慢。
    ease-in 动画以低速开始。
    ease-out 动画以低速结束。
    ease-in-out 动画以低速开始和结束。
    cubic-bezier(n,n,n,n) 在 cubic-bezier 函数中自己的值。可能的值是从 0 到 1 的数值。

    animate动画库

    相关文章

      网友评论

          本文标题:CSS变形与动画

          本文链接:https://www.haomeiwen.com/subject/txfgwqtx.html