04、CSS3-过渡和2D变换

2018-10-20  本文已影响0人  王梓懿_1fbc

一、transition过渡

  - ease: 逐渐变慢(默认值)
  - linear: 匀速
  - ease-in: 加速
  - ease-out: 减速
  - ease-in-out: 先加速后减速
  - cubic-bezier: 贝塞尔曲线(x1, y1, x2, y2 )
   【http://matthewlein.com/ceaser/】

  transition: all 2s;  // 所有属性,过渡时间2s
  transition: width 2s, height 3s;

二、过渡事件

  // 添加事件
  obj.addEventListener('webkitTransitionEnd',function(){},false);
  // 删除事件
  obj.removeEventListener('webkitTransitionEnd', fn,false);

  // 添加事件
  obj.addEventListener('transitionend',function(){},false);
  // 删除事件
  obj.removeEventListener('transitionend', fn,false);

// 添加事件
function addEvent(obj, fn){
obj.addEventListener('webkitTransitionEnd', fn,false);
obj.addEventListener('transitionend', fn,false);
}
// 删除事件
function removeEvent(obj, fn){
obj.removeEventListener('webkitTransitionEnd', fn,false);
obj.removeEventListener('transitionend', fn,false);
}

三、transform形变(2d)

  - deg 度数
  - transform-origin 旋转的基点

  // 以矩形右上角为基点旋转
  transform-origin: right top;
  // 以矩形左上角为基点旋转
  transform-origin: 0 0;
  // 旋转30度
  transform: rotate(30deg);

  - skewX()
  - skewY()

  // x轴和y轴方向,斜切30度
  transform: skewX(30deg) skewY(30deg);

  - scaleX()
  - scaleY()

  // 矩形缩小为0.9
  transform: scale(0.9);

  - translateX()
  - translateY()

  // 往右平移30px
  transform: translateX(30px)

案例: 钟表
案例: 扇形菜单

作者:西门奄
链接:https://www.jianshu.com/u/77035eb804c3
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

上一篇下一篇

猜你喜欢

热点阅读