给网页中的button加动画效果

网页中的很多事件交互都是通过点击页面中的按钮来实现的,给按钮加一点动画效果也会让网页看起来生动一些,以下就是一个简单的例子:

此按钮的动画主要是通过css的transform动画,伪元素,伪类来实现;

第一步:按钮的html(此处按钮设为a元素)

<a href="#" class=""btn btn-white>discover</a>

第二步:编写按钮的css样式

按钮的基本样式

.btn:visited{
	text-transform: uppercase;
	text-decoration: none;
	padding: 15px 40px;
	display: inline-block;
	margin-top: 30px;
	border-radius: 100px;
	transition: all .2s;
	position: relative;
	animation: moveInBottom 1s 0.75s;
	animation-fill-mode: backwards;   	  
}
.btn-white{
    background-color:#fff;
    color:#777;
}```

按钮当鼠标悬浮时的状态:
```.btn:hover{
	transform: translateY(-3px);
	box-shadow: 0 10px 20px rgba(0,0,0,0.2);
}```

当按钮点击时的状态:
```.btn:active{
	transform: translateY(-1px);
	box-shadow: 0 5px 10px rgba(0,0,0,0.2);
}```

添加btn的伪元素,实现鼠标悬浮时,背景扩大消失的效果:
```.btn::after{
	content: '';
	display: inline-block;
	height: 100%;
	width: 100%;
	border-radius: 100px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	transition: all .4s ;
}
.btn-white::after{
	background:#fff;
}
.btn:hover::after{
	transform: scaleX(1.4) scaleY(1.6);
	opacity: 0;
}```

```@keyframes moveInBottom{
	0%{
    	    opacity: 0;
    	    transform: translateY(100px);
	}
	100%{
		opacity: 1;
		transform: translate(0);
	}
}```
posted @ 2018-09-03 10:36  csuwujing  阅读(4006)  评论(0编辑  收藏  举报