效果预览

代码

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="author" content="https://www.cnblogs.com/beixuan">
<meta name="version" content="1.0.0">
<meta name="date" content="2021/12/01 18:00:26">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>CSS动画大全之按钮[a]</title>
</head>
<style type="text/css"> /* 设置 body 内、外边距为 0 */
body {
margin: 0;
padding: 0;
} /* 页面容器 */
.page-wrapper {
width: 100vw;
height: 100vh;
/* grid 布局 */
display: grid;
/* 分左右两列,分别为 50% */
grid-template-columns: 50% 50%;
grid-template-rows: 100%;
/* 设置水平垂直居中 */
justify-items: center;
align-items: center;
} .page-wrapper > div {
display: grid;
grid-template-columns: 100%;
grid-template-rows: 20%;
justify-items: center;
align-items: center;
height: 100vh;
} /* 按钮样式 */
.btn {
padding: 1rem;
min-width: 12.5rem;
text-align: center;
font-size: 1.5rem;
cursor: pointer;
border-radius: 5px;
} /* 成功按钮样式 */
.btn-primary {
box-shadow: 0 0 3px #00aaff;
color: #00aaff;
transition: all 0.3s ease-in;
} /* 成功按钮悬浮样式 */
.btn-primary:hover {
box-shadow: 0 0 1px #00aaff;
background-color: #00aaff;
color: #fff;
} /* 成功按钮样式 */
.btn-success {
box-shadow: 0 0 3px #00d064;
color: #00d064;
transition: all 0.3s ease-in;
} /* 成功按钮悬浮样式 */
.btn-success:hover {
box-shadow: 0 0 1px #00d064;
background-color: #00d064;
color: #fff;
} /* 警告按钮样式 */
.btn-warning {
box-shadow: 0 0 3px #ffaa00;
color: #ffaa00;
transition: all 0.3s ease-in;
} /* 警告按钮悬浮样式 */
.btn-warning:hover {
box-shadow: 0 0 1px #ffaa00;
background-color: #ffaa00;
color: #fff;
} /* 失败按钮样式 */
.btn-danger {
box-shadow: 0 0 3px #e30000;
color: #e30000;
transition: all 0.3s ease-in;
} /* 失败按钮悬浮样式 */
.btn-danger:hover {
box-shadow: 0 0 1px #e30000;
background-color: #ff072c;
color: #fff;
} /* 默认按钮样式 */
.btn-default {
box-shadow: 0 0 3px #000000;
color: #000000;
transition: all 0.3s ease-in;
} /* 默认按钮悬浮样式 */
.btn-default:hover {
box-shadow: 0 0 1px #000000;
background-color: #bababa;
color: #fff;
} /* 圆形按钮样式 */
.circle {
border-radius: 50%;
min-width: 56px;
min-height: 56px;
line-height: 56px;
cursor: auto;
} </style>
<body>
<!-- 页面容器 -->
<div class="page-wrapper">
<div>
<div class="btn btn-primary">登 录</div>
<div class="btn btn-success">成 功</div>
<div class="btn btn-warning">警 告</div>
<div class="btn btn-danger">失 败</div>
<div class="btn btn-default">默 认</div>
</div> <div>
<div class="btn btn-primary circle">登 录</div>
<div class="btn btn-success circle">成 功</div>
<div class="btn btn-warning circle">警 告</div>
<div class="btn btn-danger circle">失 败</div>
<div class="btn btn-default circle">默 认</div>
</div>
</div>
</body>
</html>

【全】CSS动画大全之按钮【a】的更多相关文章

  1. 【2016年特别福利】史上最全CSS学习资料大全

    css学习篇 [2016年特别福利]史上最全CSS学习资料大全

  2. 原生html,css+js写下载按钮有提示动画效果的落地页

    <!DOCTYPE html> <html lang="en"> <head>   <meta charset="UTF-8&q ...

  3. 这样使用 GPU 渲染 CSS 动画(转)

    大多数人知道现代网络浏览器使用GPU来渲染部分网页,特别是具有动画的部分. 例如,使用transform属性的CSS动画看起来比使用left和top属性的动画更平滑. 但是如果你问,“我如何从GPU获 ...

  4. Web高性能动画及渲染原理(1)CSS动画和JS动画

    目录 一. CSS动画 和 JS动画 1.1 CSS动画 1.2 JS动画 1.3 小结 二. 使用Velocity.js实现动画 示例代码托管在:http://www.github.com/dash ...

  5. 高性能Web动画和渲染原理系列(1)——CSS动画和JS动画

    [摘要] 介绍CSS动画和JS动画的基本特点,以及轻量级动画库velocity.js的基本用法. 示例代码托管在:http://www.github.com/dashnowords/blogs 博客园 ...

  6. JS框架_(JQuery.js)文章全屏动画切换

    百度云盘 传送门 密码:anap 文章全屏动画切换效果 <!doctype html> <html lang="zh"> <head> < ...

  7. Css 动画的回调

    在做项目中经常会遇到使用动画的情况.以前的情况是用js写动画,利用setTimeout函数或者window.requestAnimationFrame()实现目标元素的动画效果.虽然后者解决了刷新频率 ...

  8. [转]CSS hack大全&详解

    转自:CSS hack大全&详解 1.什么是CSS hack? CSS hack是通过在CSS样式中加入一些特殊的符号,让不同的浏览器识别不同的符号(什么样的浏览器识别什么样的符号是有标准的, ...

  9. CSS动画与GPU

    写在前面 满世界的动画性能优化技巧,例如: 只允许改变transform.opacity,其它属性不要动,避免重新计算布局(reflow) 对动画元素应用transform: translate3d( ...

  10. 15个来自 CodePen 的酷炫 CSS 动画效果【下篇】

    CodePen 是一个在线的前端代码编辑和展示网站,能够编写代码并即时预览效果.你在上面可以在线分享自己的 Web 作品,也可以欣赏到世界各地的优秀开发者在网页中实现的各种令人惊奇的效果. 今天这篇文 ...

随机推荐

  1. 漏洞复现之CVE-2012-1823(PHP-CGI远程代码执行)

    关于CGI知识点 `CGI模式下的参数: -c 指定php.ini文件的位置 -n 不要加载php.ini文件 -d 指定配置项 -b 启动fastcgi进程 -s 显示文件源码 -T 执行指定次该文 ...

  2. 如何将本地的项目,上传到github

    操作步骤: 1.github,创建一个仓库,复制仓库的地址 2.在要上传文件的目录,点击选择git bash here 3.输入[git clone],粘贴刚复制的仓库地址,clone成功后,会将仓库 ...

  3. 10-Python进程与线程

    Python进程 创建新进程 from multiprocessing import Process import time def run_proc(name): #子进程要执行的代码 for i ...

  4. ClickHouse介绍(一)初次使用

    ClickHouse使用 ClickHouse是一个面向列存储的OLAP分析数据库,以其强大的分析速度而闻名.有关ClickHouse的介绍可以参考其官网说明[1].本文主要介绍它的基本使用. 1. ...

  5. 通过 源码 安装 python

    为了vim PYTHON="3.4.1" tget () { #try wget filename=`basename $1` echo "Downloading [${ ...

  6. python跟踪脚本运行过程(类似bash shell -x)

    #详细追踪 python -m trace --trace pyscript.py #显示调用了哪些函数 python -m trace --trackcalls pyscript.py

  7. 松灵机器人scout mini小车 自主导航(1)

    松灵机器人scout mini小车 自主导航 最近实验室来了个松灵机器人scout mini的底座.本着学习的目的对其进行了研究,从最基础的连接开始. 1.硬件连接准备 松灵scout mini提供了 ...

  8. 谈谈你对 Vue 生命周期的理解?

    生命周期是什么? Vue 实例有一个完整的生命周期,也就是从 开始创建.初始化数据.编译模版.挂载 Dom -> 渲染.更新 -> 渲染.卸载等一系列过程,我们称这是 Vue 的生命周期. ...

  9. yb课堂之个人信息接口开发 《十三》

    根据token从查询个人信息接口开发 直接解密token,获取个人信息 通过token解密查询数据库获取个人信息 UserController.java package net.ybclass.onl ...

  10. Vue 3 后端错误消息处理范例

    1. 错误消息格式 前后端消息传递时,我们可以通过 json 的 errors 字段传递错误信息,一个比较好的格式范例为: { errors: { global: ["网络错误"] ...