关于css:css-集合

3次阅读

共计 1629 个字符,预计需要花费 5 分钟才能阅读完成。

最近须要解决一些 css 款式,例如高光成果,抖动动画,所以,在这里记录一下,当初及当前有用到的 css 特效。
目前次要用的到属性有:animation(动画),transition(过渡)。transform(旋转)。@keyframes 关键帧。

1,高光成果:

在须要高光的图片里面,增加一层 div,编写款式。
首先,给 div 设置一个 after 的伪元素。通过 linear-gradient 设置一个高亮的款式,应用 transform 将程度的高亮,旋转,达到咱们须要的角度,这里是旋转了 45 度。在应用 animation 增加 动画的播放速度。@keyframes 定义动画的挪动地位。具体代码如下:
HTML 代码:

<div class="light">
    <img src=""alt="">
</div>

css 款式:

.light{
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 1;
}
.light:after{
  position: absolute;
  z-index: 1;
  left: -100%;                  
  top: 0;
  width: 100%;
  height: 100%;
  content: "";
  background: linear-gradient(to right,rgba(255, 255, 255, 0) 0,rgba(255, 255, 255, 0.5) 25%,rgb(255, 255, 255) 50%,rgba(255, 255, 255, 0.5) 75%,rgba(255, 255, 255, 0) 100%);
  transform: skewX(45deg);
  animation: bright 3s infinite;
}
@keyframes bright{
  0%{left: -100%;}
  100%{left: 500%;}
}

2,抖动动画

抖动动画,用的 css 属性是:transform,次要是要在不同的时刻,旋转不同的角度,达到抖动的成果。
HTML:

<div  class="trembling"></div>

CSS:


.trembling{
  width: 100px;
  height: 100px;
  animation: trembling 4s linear  infinite backwards;
}
@keyframes trembling {
  26% {transform: rotate(0deg) scale(1);
  }
  28% {transform: rotate(-2deg) scale(1.04);
  }
  32% {transform: rotate(1deg) scale(1.01);
  }
  34% {transform: rotate(-2deg) scale(1.02);
  }
  36% {transform: rotate(3deg) scale(1);
  }
  39% {transform: rotate(-1deg) scale(1);
  }
  44% {transform: rotate(0deg) scale(1);
  }

}

3,div 挪动成果:
最根底的用法,就是在须要扭转的 div 上 增加 transition 属性即可。代码如下:

HTML:
<div class="move"></div>

CSS:

.move{
  width: 100px;
  height: 200px;
  transition: width 0.5s;
  background-color: aqua
}
.move:hover{
  width: 200px;
  height: 200px;
}

在开发中,会有遇到,一开始 div 是暗藏的,鼠标拖动才会显示,并展现过渡动画。这里须要留神的是,须要先设置 display:block 再设置一个 setTimeout 提早肯定工夫,在扭转高度或宽度。不然transition 的过渡动画没有成果。
js 代码如下:

  divObj.style.display = "block";
  setTimeout(function () {divObj.style.height = "20vh";}, 5);

未完待续

正文完
 0