css3渐变和css3动画笔记

这篇博客探讨了CSS3中的渐变和动画特性。文章提到了CSS3的兼容性问题,详细介绍了径向渐变和线性渐变的使用,包括重复渐变的实现。此外,还讨论了2D位移、缩放、旋转以及倾斜等变换方法,如translate(), scale(), rotate()和skew()。这些CSS3属性和方法为网页设计提供了丰富的动态效果。" 138108704,6677652,Vue.js双向数据绑定原理与Object.defineProperty()缺点,"['前端开发', 'JavaScript', 'Vue框架']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

css3

css3属性: 预览版,还没有一个正式的最终版,多以有很多的兼容性问题,浏览器不识别

        浏览器为了使这些属性兼容,每一个浏览器厂商都提供了一个属于自己的浏览器的语法规则,浏览器兼容前缀
         
        主流浏览器:
            谷歌  火狐 苹果 欧朋  ie
             
        浏览器前缀:
            -webkit-    谷歌浏览器
            -moz-       火狐浏览器
            -ms-        ie浏览器
            -o-         欧朋浏览器
             
        box-shadow:水平偏移量 垂直偏移量 模糊度 模糊大小 颜色;盒子阴影

css3渐变: 由浏览器生成的

        线性渐变:
        background: -webkit-linear-gradient(方向,颜色1,颜色2,颜色3,....颜色n);
        background: linear-gradient(to 方向,颜色1,颜色2,颜色3,....颜色n);
         
        1 单一方向渐变: 
            left 从左边开始
            right 从右边开始
            top 从上边开始
            bottom   从底部开始
            注意: 需要添加兼容前缀
             
            to left 到左边(结束位置)
            to right 到右边
            to top  到顶部
            to bottom 到底部
            注意: 不要添加兼容前缀
         
        2 对角渐变:
            left top    左上开始
            left bottom 左下开始
            right top   右上开始
            注意: 带兼容前缀
             
            to left top 到左上(结束位置)
            注意: 不带兼容前缀
             
        3 角度的渐变
            10deg   10度
             
        4 默认情况下颜色趋于均分
            可以指定颜色分布的百分比,让颜色按照百分比进行渐变
            blue 10%    到10% 都是蓝色
            red 10px    到10px都是红色

径向渐变:(一定要加浏览器前缀)
从一个点到四周的渐变

            background:-webkit-radial-gradient(渐变位置,形状,大小,颜色1,颜色2,颜色3);
            渐变位置: 默认从中心到四周
                left    从左边到四周的渐变
                right
                top
                bottom
                 
                left top    从左上角到四周的渐变
                left bottom 
                right top
                ...
                 
                10px 30px   距离左边10px 距离上边30px
                 
            形状:
                默认椭圆    ellipse
                正圆      circle
                注意: 元素是正方形,则都是正圆
                 
            大小:
            size:渐变的大小,即渐变到哪里停止,它有四个值。 
                closest-side:最近边; 
                farthest-side:最远边; 
                closest-corner:最近角; 
                farthest-corner:最远角。

渐变重复: repeatig-
线性渐变:

            径向渐变:
             
        补充:
        渐变用的背景属性是 background-image:;

2D位移 translate()
• 将元素向指定的方向移动,类似于position中的relative。
• 水平移动:向右移动translateX(tx)和向左移动translateX(-tx);
• 垂直移动:向下移动translateY(ty)和向上移动translateY(-ty);
• 对角移动:右下角移动translate(tx,ty)、右上角移动translate(tx,-ty)、左上角移动
translate(-tx,-ty)和左下角移动translate(-tx,ty)。
2D缩放scale()
• 让元素根据中心原点对对象进行缩放。默认的值1。因此0.01到0.99之间的任何值,
使一个元素缩小;而任何大于或等于1.01的值,让元素显得更大。
• scaleX():相当于scale(sx,1)。表示元素只在X轴(水平方向)缩放元素,其默认值
是1。
• scaleY():相当于scale(1,sy)。表示元素只在Y轴(纵横方向)缩放元素,其默认值
是1。
• scale(tx,ty):水平方向和垂直方向都放大
3、rotate()
旋转rotate()函数通过指定的角度参数对元素根据对象原点指定一个2D旋转。它主要在二维空间内进行操作,接受一个角度值,用来指定旋转的幅度。如果这个值为正值,元素相对原点中心顺时针旋转;如果这个值为负值,元素相对原点中心逆时针旋转。
rotateX() 方法,元素围绕其 X 轴以给定的度数进行旋转
rotateY() 方法,元素围绕其 Y 轴以给定的度数进行旋转
transition:skew();倾斜

        3d:
            区别于2d的地方,3d有近大远小
            景深:
                perspective:; 元素视线的距离,一般在父元素中使用
                900px-1200px
                 
            事物的观察点:
                perspective-origin:;
                    center left right top bottom
                    % px
                     
            3d的场景:
                transform-style:;
                    flat    默认值,是呈现在2d场景中
                    preserve-3d 呈现在3d中
                 
                3d位移
                3d旋转
                3d缩放
                注: 比2d多一个z轴
                 
        css3动画
            1: 定义一个动画过程
                1) 
                @keyframes mz{
                    from{初始状态}
                    to{结束状态}
                }
                 
                2)
                @keyframes mz{
                    0%{初始状态}
                    ...
                    100%{结束状态}
                }
                 
                 
            2: 给对应的元素调用
                animation:动画名字 运动时间 运动的类型 动画延迟时间 动画是否循环 运动的方向;
                animation-name:;
                animation-duration:;
                animation-timing-function:;
                animation-delay:;
                animation-iteration-count:;
                animation-direction:;
                 
            鼠标移入时暂停:
                animation-play-state:;
                 
            animation 和 transition的对比:
                相同点: 都是随着时间的改变而改变元素的属性值
                不同点: transition需要触发一个时间才会引起元素属性的改变
                    animation不需要任何事件触发也可以完成元素随着时间的变化而改变属性
                 
        添加:
            background:rgba(红,绿,蓝,透明);
                透明取值范围 0-1
                 
            border-radius:圆角;
             
            backface-visibility:hidden; 背面不可见
             
            选择器:target{}    关联目标元素
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值