CSS3动画,变形及背景

动画

  • animation-name: 要对当前元素生效的关键帧的名字
animation-name: test;
  • animation-duration: 动画的执行时间
animation-duration: 4s;
  • animation-delay:动画的延时
animation-delay: 2s;
  • nimation-iteration-count 动画执行的次数 可选值:
    • 次数
    • infinite 无限执行
animation-iteration-count: 1;
  • animation-direction 指定动画运行的方向可选值:
    • normal 默认值 从 from 向 to运行 每次都是这样
    • reverse 从 to 向 from 运行 每次都是这样
    • alternate 从 from 向 to运行 重复执行动画时反向执行
    • alternate-reverse 从 to 向 from运行 重复执行动画时反向执行
animation-direction: alternate-reverse;
  • animation-play-state: 设置动画的执行状态 可选值:
    • running 默认值 动画执行
    • paused 动画暂停
animation-play-state: paused;
  • animation-fill-mode: 动画的填充模式可选值:
    • none 默认值 动画执行完毕元素回到原来位置
    • forwards 动画执行完毕元素会停止在动画结束的位置
    • backwards 动画延时等待时,元素就会处于开始位置
    • both 结合了forwards 和 backwards
animation-fill-mode: both;
  • 混合使用
animation: test 2s 2 1s alternate;

实现动画

  • 动画和过渡类似,都是可以实现一些动态的效果,
  • 不同的是过渡需要在某个属性发生变化时才会触发
  • 动画可以自动触发动态效果
  • 设置动画效果,必须先要设置一个关键帧,关键帧设置了动画执行每一个步骤
@keyframes test {
           /* from表示动画的开始位置 也可以使用 0% */
           from{
               margin-left: 0;
               background-color: orange;
          }

           /* to动画的结束位置 也可以使用100%*/
           to{
               background-color: red;
               margin-left: 700px;
          }
      }

变形transform

  • 变形就是指通过CSS来改变元素的形状或位置
  • 变形不会影响到页面的布局
  • transform 用来设置元素的变形效果
    • translateX() 沿着x轴方向平移
    • translateY() 沿着y轴方向平移
    • translateZ() 沿着z轴方向平移
    • 平移元素,百分比是相对于自身计算的
    • 平移:
transform: translateY(-100px);

Z轴平移

设置视距

perspective: 800px;
  • z轴平移,调整元素在z轴的位置,正常情况就是调整元素和人眼之间的距离,距离越大,元素离人越近
  • z轴平移属于立体效果(近大远小),默认情况下网页是不支持透视,如果需要看见效果必须要设置网页的视距
transform: translateZ(800px);

旋转

  • 通过旋转可以使元素沿着x y 或 z旋转指定的角度
    • rotateX()
    • rotateY()
    • rotateZ()
transform: rotateY(180deg);
/* 是否显示元素的背面 */
backface-visibility: hidden;

缩放

  • 变形的原点 默认值 center
  • 修改原点
transform-origin:20px 20px;
  • 对元素进行缩放的函数:
    • scaleX() 水平方向缩放
    • scaleY() 垂直方向缩放
    • scale() 双方向的缩放
transform:scale(2)

背景颜色

  • background-color 设置背景颜色
background-color: #bfa;

背景图片

  • background-image 设置背景图片
    • 可以同时设置背景图片和背景颜色,这样背景颜色将会成为图片的背景色
    • 如果背景的图片小于元素,则背景图片会自动在元素中平铺将元素铺满
    • 如果背景的图片大于元素,将会一个部分背景无法完全显示
    • 如果背景图片和元素一样大,则会直接正常显示
background-image: url("./img/1.png");

背景重复方式

  • background-position 用来设置背景图片的位置
    • 通过 top left right bottom center 几个表示方位的词来设置背景图片的位置
    • 使用方位词时必须要同时指定两个值,如果只写一个则第二个默认就是center
    • 通过偏移量来指定背景图片的位置:水平方向的偏移量 垂直方向变量
    • 设置方式:
background-position: center;
background-position: -50px 300px;

背景范围

  • background-clip
    • border-box 默认值,背景会出现在边框的下边
    • padding-box 背景不会出现在边框,只出现在内容区和内边距
    • content-box 背景只会出现在内容区
    • 可选值:
  • background-origin 背景图片的偏移量计算的原点
    • padding-box 默认值,background-position从内边距处开始计算
    • content-box 背景图片的偏移量从内容区处计算
    • border-box 背景图片的变量从边框处开始计算
background-origin: border-box;
           background-clip: content-box;

背景图片大小

  • background-size 设置背景图片的大小
    • 第一个值表示宽度
    • 第二个值表示高度
    • - 如果只写一个,则第二个值默认是 auto
  • cover 图片的比例不变,将元素铺满
  • contain 图片比例不变,将图片在元素中完整显示
background-size: contain;

背景图片是否随元素移动

  • background-attachment背景图片是否跟随元素移动
    • scroll 默认值 背景图片会跟随元素移动
    • fixed 背景会固定在页面中,不会随元素移动
    • 可选值:

注意

  • backgound 背景相关的简写属性,所有背景相关的样式都可以通过该样式来设置
  • 并且该样式没有顺序要求,也没有哪个属性是必须写的
  • background-size必须写在background-position的后边,并且使用/隔开 background-position/background-size
  • background-origin background-clip 两个样式 ,orgin要在clip的前边
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

树懒pray

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值