zoukankan      html  css  js  c++  java
  • css3-03转换、动画、布局

    一,transform四种简单动画:
    (1),旋转动画
    /* 旋转,正值为顺时针 */
    transform: rotate(100deg);
    /* 整个元素沿着中心点的x轴旋转 逆时针*/
    transform: rotateX(30deg);
    /* 整个元素沿着中心点的Y轴旋转  逆时针 */
    transform: rotateY(30deg);
    /* 整个元素沿着中心点的Z轴旋转 会按照中心点旋转 顺时针*/
    transform: rotateZ(30deg);
    /* 前面对应的数字无数字大小区别,只有正负区别,正则依然逆时针,负数则顺时针 */
    transform: rotate3d(10,0,0,30deg);
    
    (2),平移动画
    /* 沿着中心点向Z轴方向平移 */
    transform:translateZ(100px);
        /* 沿着中心点向X轴方向平移 */
    transform:translateX(100px);
        /* 沿着中心点向Y轴方向平移 */
    transform:translateY(100px);
    
    (3),挤压扭曲
    /* 跟x轴平行的两条边依然平行,但是这两条边逐渐分开 */
    transform: skewX(30deg);
    /* 跟Y轴平行的两条边依然平行,但是这两条边逐渐分开 */
    transform: skewX(30deg);
    /* 如果两个值都改动,则没有啥平行的,两边尖角等于90-x-y的度数 */
    /* 如果x+y的值大于90,则整个元素消失 */
    transform: skew(30deg,30deg);
    
    (4),缩放动画
    /* 缩放,scale(0.2,2) 水平缩小为初始的0.2倍,垂直放大为初始值的两倍*/
    transform: scale(0.8,1.5);
    
    (5),透视效果
    /* 透视距离 800-2000之间 不用加单位*/
    perspective: 300;
    
    二,复杂的animation动画封装
    (1),写进一个属性里面(常用)
     /* 动画总属性:动画名 时间 运动函数  */
    animation: move 3s ease;  
    
    (2),动画名称:自定义动画名称aa bb cc
    animation-name: move;
    
    (3),运行时间:写入秒数,单位是s
    animation-duration: 5s;
    
    (4),定义动画最后一帧:backwards  forwards  both
    animation-fill-mode: both;
    
    (5),延迟执行的时间,不写默认为0s
    animation-delay: 1s;
    
    (6),动画执行的次数:0-5 或者infinite无限次数
    animation-iteration-count: 2;
    
    (7),动画是否交替运动:默认为normal,无效果;alternate,交替运行
    animation-direction: normal;
    
    (8),运动方式:linear,匀速运动;ease,匀加速运动;cubic-bezier(),贝塞尔曲线,可填不同值;
    /* 运动方式 匀速 加速 贝塞尔 */
    animation-timing-function: ease-in;
    
    (9),暂停动画,可加于划过伪类选择器中体现:running运行,paus暂停
    div:hover{
                animation-play-state: running;
            }
    
    (10),必不可少的封装动画
    @keyframes move {
                /* form 和0% 一样 to等于100% */
                /* form{//等于0%
                    background: red;
                }
                to{//等于100%
                    background: green;
                } */
                0% {
                    background: red;
                    transform: translate(0px,0px);
                }
                100% {
                    background: blue;
                    transform: translate(0px,0px);
                } }
    
    三,多列布局
    记住3个常用的属性即可
    (1),column-count:3;可以分成3栏(必须含有中文)
    div {
        -webkit-column-count: 3; /* Chrome, Safari, Opera */
        -moz-column-count: 3; /* Firefox */
        column-count: 3;
    }
    
    (2),分栏直接的间隙可以通过属性设置column-gap
    div {
        -webkit-column-gap: 40px; /* Chrome, Safari, Opera */
        -moz-column-gap: 40px; /* Firefox */
        column-gap: 40px;//分栏的间隙为40px
    }
    
    (3),列与列之间的边框的样式column-rule-style: solid;
    div {
        -webkit-column-rule-style: solid; /* Chrome, Safari, Opera */
        -moz-column-rule-style: solid; /* Firefox */
        column-rule-style: solid;
    }
    
    分列属性表
    属性 描述
    column-count 指定元素应该被分割的列数。
    column-fill 指定如何填充列
    column-gap 指定列与列之间的间隙
    column-rule 所有 column-rule-* 属性的简写
    column-rule-color 指定两列间边框的颜色
    column-rule-style 指定两列间边框的样式
    column-rule-width 指定两列间边框的厚度
    columns 设置 column-width 和 column-count 的简写
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items:center;
    flex-wrap:wrap;
    align-content: space-around;
    
    未完待续...
  • 相关阅读:
    每日总结2.26
    《梦断代码》阅读笔记三
    每日总结2.25
    每日总结2.24
    每日总结2.23
    每日总结2.22
    每日总结2.19
    《梦断代码》阅读笔记二
    Java-11 形参和实参
    Java-10 final用法
  • 原文地址:https://www.cnblogs.com/adylz111/p/13433879.html
Copyright © 2011-2022 走看看