效果预览

代码

<!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动画大全之按钮[b]</title>
</head>
<style type="text/css"> /* 设置 body 内、外边距为 0 */
body {
margin: 0;
padding: 0;
display: grid;
grid-template-columns: 100%;
grid-template-rows: 100%;
justify-items: center;
align-items: center;
width: 100vw;
height: 100vh;
background-color: #FFF;
} .page-wrapper {
display: grid;
grid-template-columns: 33% 34% 33%;
grid-template-rows: 100%;
justify-items: center;
align-items: center;
width: 100vw;
height: 100vh;
} .page-wrapper > div {
display: inline-block;
} .btn {
width: 12.5rem;
height: 3.125rem;
line-height: 3.125rem;
font-size: 1.5rem;
padding: 0.5rem;
text-align: center;
box-shadow: 0 0 1px #000;
position: relative;
transition: color 0.2s;
margin-bottom: 1rem;
cursor: pointer;
} .btn:hover {
color: #FFF;
} .btn-type-left, .btn-type-right {
height: 7.85rem;
line-height: 7.85rem;
} .btn-type-top::after {
content: '';
width: 100%;
height: 0.3rem;
position: absolute;
top: 0;
left: 0;
background-color: #000000;
transition: all 0.4s;
z-index: -1;
} .btn-type-top:hover::after {
content: '';
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
background-color: #000000;
} .btn-type-right::after {
content: '';
width: 0.3rem;
height: 100%;
position: absolute;
bottom: 0;
right: 0;
background-color: #000000;
transition: all 0.2s;
z-index: -1;
} .btn-type-right:hover::after {
content: '';
width: 100%;
height: 100%;
position: absolute;
bottom: 0;
right: 0;
background-color: #000000;
} .btn-type-bottom::after {
content: '';
width: 100%;
height: 0.3rem;
position: absolute;
bottom: 0;
left: 0;
background-color: #000000;
transition: all 0.4s;
z-index: -1;
} .btn-type-bottom:hover::after {
content: '';
width: 100%;
height: 100%;
position: absolute;
bottom: 0;
left: 0;
background-color: #000000;
} .btn-type-left::after {
content: '';
width: 0.3rem;
height: 100%;
position: absolute;
bottom: 0;
left: 0;
background-color: #000000;
transition: all 0.2s;
z-index: -1;
} .btn-type-left:hover::after {
content: '';
width: 100%;
height: 100%;
position: absolute;
bottom: 0;
left: 0;
background-color: #000000;
}
</style>
<body>
<!-- 页面容器 -->
<div class="page-wrapper">
<div class="btn btn-type-left">查看详情 Left</div>
<div>
<div class="btn btn-type-top">查看详情 Top</div>
<div class="btn btn-type-bottom">查看详情 Bottom</div>
</div>
<div class="btn btn-type-right">查看详情 Right</div>
</div>
</body>
</html>

往期回顾

【全】一、CSS动画大全之按钮组【a】

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

  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. Vulnhub Mercy Walkthrough

    Recon 首先进行二层扫描. ┌──(kali㉿kali)-[~] └─$ sudo netdiscover -r 192.168.80.0/24 Currently scanning: Finis ...

  2. Jenkins从github拉取项目,github有更新,自动进行构建,实现自动集成

    使用git之前的准备工作 1. 搭建Jenkins的机器上,有安装git,配置git的安装地址,Jenkins配置Git的安装地址 2. Global Tool Configuration - > ...

  3. 07-Linux文件权限管理

    文件的类型 Linux的哲学思想:一切皆文件. Linux的文件分为多种类型. 可以通过ll命令查看文件的类型: ll #输出: -rw-------. 1 root root 1266 2月 29 ...

  4. STM32 CubeMX 学习:004-PWM

    背景 上一讲,我们介绍了 STM32 CubeMX 学习:定时器 ,并示范了如何使用定时器来定时.这一讲我们来试试PWM(Pulse Width Modulation, 脉冲宽度调制),这是利用微处理 ...

  5. mac环境搭建

    brew 参考:https://zhuanlan.zhihu.com/p/111014448 ## 更新 homebrew-cask cd "$(brew --repo)"/Lib ...

  6. Swin Transformer:最佳论文,准确率和性能双佳的视觉Transformer | ICCV 2021

    论文提出了经典的Vision Transormer模型Swin Transformer,能够构建层级特征提高任务准确率,而且其计算复杂度经过各种加速设计,能够与输入图片大小成线性关系.从实验结果来看, ...

  7. C语言自动编译执行脚本

    C语言自动编译执行脚本 在Linux上面用命令行写一些简单的C语言程序,总是遇到一个问题,代码写完后要先编译后运行,而且编译生成的可执行文件默认还是a.out,自己去加参数去改有觉得十分麻烦,所以干脆 ...

  8. IEC61850方案分享,基于全志、瑞芯微国产平台实现!

    什么是IEC61850协议? IEC61850是一种用于在电力自动化系统中进行数据交换和控制的通信协议.它定义了一种标准化的通信和数据模型,以支持设备和系统之间的数据交换和互操作性. IEC61850 ...

  9. T3/A40i支持Linux-5.10新内核啦,Docker、Qt、Python统统升级!

    自2021年创龙科技推出全志国产化率100%的T3/A40i工业核心板后,不到两年时间已超过800家工业客户选择创龙科技T3/A40i平台.随着客户产品的不断升级与迭代,部分"能源电力&qu ...

  10. ORACLE 如何判断某字段是否小于0

    Oracle 自带的函数 SIGN 表达式的正 (+1).零 (0) 或负 (-1) 号 SQL> SELECT SIGN(-47.3), SIGN(0), SIGN(47.3) FROM du ...