从零开始制作一个漂亮的悬浮按钮

0.1血版

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<style>
/* 按钮的通用样式, 定义所有 button 元素的样式*/
/* 也可以添加class属性, 使用.class_btn
同样可以添加id属性, 使用#id_btn */
button {
    position: fixed;  /* 固定定位 */
    bottom: 10px; /* 距离窗口底部 10 像素 */
    right: 10px; /* 距离窗口右侧 10 像素 */
    background-color: #007bff; /* 背景颜色为蓝色 */
    padding: 15px 20px; /* 内边距,上下 15 像素,左右 20 像素 */
    z-index: 666; /* 设置较高的层级,确保按钮在最上层显示 */
}
</style>
<body>
    <button id="id_btn" class="class_btn">按钮</button>
</body>
</html>

按钮效果:

使用 button 对所有按钮进行通用样式设置。

使用 position: fixed 固定按钮位置,无论页面如何滚动,带有 position: fixed 的元素都会固定在指定位置,不会随页面滚动而改变位置。
使用了 position: fixed 之后,可以使用以下几个常用的定位属性来指定元素在视口中的位置:
top:距离视口顶部的距离
bottom:距离视口底部的距离
left:距离视口左侧的距离
right:距离视口右侧的距离

使用 padding: 15px 20px;  调整按钮大小,而不是使用width和height。
拥有以下优势:
按钮尺寸根据文本内容加上周围的填充进行动态调整。
不必担心内容溢出。
由于按钮随着文本长度或翻译的不同而增长或收缩,它也往往更快,更容易访问。

残血版

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<style>
button {
    position: fixed;  /* 固定定位 */
    bottom: 10px; /* 距离窗口底部 10 像素 */
    right: 10px; /* 距离窗口右侧 10 像素 */
    background-color: #007bff; /* 背景颜色为蓝色 */
    padding: 15px 20px; /* 内边距,上下 15 像素,左右 20 像素 */
    z-index: 666; /* 设置较高的层级,确保按钮在最上层显示 */

    color: white; /* 文本颜色为白色 */
    font-weight: bold; /* 文本加粗 */
    font-size: 18px;  /* 字体大小 18 像素 */
    border-radius: 30px; /* 设置圆角半径为 30 像素 */
    border: none;  /* 去除边框 */
}
</style>
<body>
    <button id="id_btn" class="class_btn">按钮</button>
</body>
</html>

按钮效果:

消除黑色边框只需简单的 border: none;  /* 去除边框 */

鼠标悬停进阶版

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<style>
/* 按钮样式 */
button {
    position: fixed;  /* 固定定位 */
    bottom: 10px; /* 距离窗口底部 10 像素 */
    right: 10px; /* 距离窗口右侧 10 像素 */
    background-color: #007bff; /* 背景颜色为蓝色 */
    padding: 15px 20px; /* 内边距,上下 15 像素,左右 20 像素 */
    z-index: 666; /* 设置较高的层级,确保按钮在最上层显示 */

    color: white; /* 文本颜色为白色 */
    font-weight: bold; /* 文本加粗 */
    font-size: 18px;  /* 字体大小 18 像素 */
    border-radius: 30px; /* 设置圆角半径为 30 像素 */
    border: none;  /* 去除边框 */

    cursor: pointer;  /* 鼠标悬停时显示手形指针 */
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.1);  /* 添加阴影效果 */
    transition: all 0.3s ease;  /* 所有属性变化添加 0.3s 平滑过渡 */
}

/* 当鼠标悬停在 button 上时的样式 */
button:hover {  /* 定义悬停时的样式 */
    background-color: #0056b3;  /* 改变背景颜色为深蓝色 */
    box-shadow: 0 15px 20px rgba(0, 0, 0, 0.2);  /* 增加阴影效果,使按钮更突出 */
    transform: translateY(-5px);  /* 按钮向上移动 5 像素,产生浮动效果 */
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.3);  /* 加深阴影效果 */
}
</style>
<body>
    <button id="id_btn" class="class_btn">按钮</button>
</body>
</html>

按钮效果

鼠标悬停效果

鼠标点击进阶版

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<style>
/* 按钮样式 */
button {
    position: fixed;  /* 固定定位 */
    bottom: 10px; /* 距离窗口底部 10 像素 */
    right: 10px; /* 距离窗口右侧 10 像素 */
    background-color: #007bff; /* 背景颜色为蓝色 */
    padding: 15px 20px; /* 内边距,上下 15 像素,左右 20 像素 */
    z-index: 666; /* 设置较高的层级,确保按钮在最上层显示 */

    color: white; /* 文本颜色为白色 */
    font-weight: bold; /* 文本加粗 */
    font-size: 18px;  /* 字体大小 18 像素 */
    border-radius: 30px; /* 设置圆角半径为 30 像素 */
    border: none;  /* 去除边框 */

    cursor: pointer;  /* 鼠标悬停时显示手形指针 */
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.1);  /* 添加阴影效果 */
    transition: all 0.3s ease;  /* 所有属性变化添加 0.3s 平滑过渡 */
}

/* 当鼠标悬停在 button 上时的样式 */
button:hover {  /* 定义悬停时的样式 */
    background-color: #0056b3;  /* 改变背景颜色为深蓝色 */
    box-shadow: 0 15px 20px rgba(0, 0, 0, 0.2);  /* 增加阴影效果,使按钮更突出 */
    transform: translateY(-5px);  /* 按钮向上移动 5 像素,产生浮动效果 */
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.5);  /* 加深阴影效果 */
}

/* 当鼠标点击 button 时的样式 */
button:active {  /* 定义按钮被点击时的样式 */
    background-color: #00408a;  /* 改变背景颜色为更深蓝色 */
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.6);  /* 调整阴影效果,使按钮看起来按下 */
    transform: translateY(0);  /* 按钮恢复原位 */
}
</style>
<body>
    <button id="id_btn" class="class_btn">按钮</button>
</body>
</html>

按钮效果

鼠标悬停效果

鼠标点击效果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/975490.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

安全面试2

文章目录 简单描述一下什么是水平越权&#xff0c;什么是垂直越权&#xff0c;我要发现这两类漏洞&#xff0c;那我代码审计要注意什么地方水平越权&#xff1a;垂直越权&#xff1a;水平越权漏洞的审计重点垂直越权漏洞的审计重点 解释一下ssrf漏洞原理攻击场景修复方法 横向移…

数字电子技术基础(二十一)——双极型三极管的开关特性

目录 1 半导体三极管的开关特性 1.1 双极性三极管的开关特性 1.2 双极型三极管的基本开关电路 1.3 三极管的开关等效电路 1.4 双极型三极管的动态开关特性 TTL门电路是一种基于双极型晶体管的数字逻辑电路&#xff0c;在20世纪60年代到80年代之间&#xff0c;TTL门电路是应…

足疗店会员管理系统,足疗养生全方位会员管理解决方案,佳易王试用版养生会所足疗店推拿按摩会员管理系统操作教程

一、概述 本实例以佳易王试用版养生会所足疗店推拿按摩会员管理系统17.1版本为例说明&#xff0c;其他版本可参考本实例。试用版软件资源可到文章最后了解&#xff0c;下载的文件为压缩包文件&#xff0c;请使用免费版的解压工具解压即可试用。 软件特点&#xff1a; 1、功能…

【HarmonyOS Next】拒绝权限二次申请授权处理

【HarmonyOS Next】拒绝权限二次申请授权处理 一、问题背景&#xff1a; 在鸿蒙系统中&#xff0c;对于用户权限的申请&#xff0c;会有三种用户选择方式&#xff1a; 1.单次使用允许 2.使用应用期间&#xff08;长时&#xff09;允许 3.不允许 当用户选择不允许后&#xff0…

论文笔记(七十二)Reward Centering(四)

Reward Centering&#xff08;四&#xff09; 文章概括摘要附录A 伪代码 文章概括 引用&#xff1a; article{naik2024reward,title{Reward Centering},author{Naik, Abhishek and Wan, Yi and Tomar, Manan and Sutton, Richard S},journal{arXiv preprint arXiv:2405.09999…

数据结构之二叉树的定义及实现

1. 树的概念 主要的定义&#xff1a; 节点的度&#xff1a;一个节点含有的子树的个数称为该节点的度&#xff1b;如上图&#xff1a;A的为6 叶节点或终端节点&#xff1a;度为0的节点称为叶节点&#xff1b;如上图&#xff1a;B&#xff0c;C&#xff0c;H&#xff0c;I等节点…

Deepseek 与 ChatGPT:AI 浪潮中的双子星较量

引言 在人工智能飞速发展的当下&#xff0c;AI 语言模型成为了人们关注的焦点。Deepseek 与 ChatGPT 作为其中的佼佼者&#xff0c;各自展现出独特的魅力&#xff0c;引领着 AI 技术的发展潮流。今天&#xff0c;就让我们深入探讨这两款模型&#xff0c;看看它们在 AI 领域中是…

网络运维学习笔记 019 HCIA-Datacom综合实验03

文章目录 综合实验3实验需求一&#xff1a;A公司网络规划二&#xff1a;B公司网络规划 配置一、ip、vlan、vlanif&#xff0c;stp、eth-trunkSW1SW2SW3R1 二、ospfSW1R1 三、NATR1ISP 四、拒绝ping允许httpSW1 五、右半部分vlan、dhcp、ospf、NATSW4R2 综合实验3 实验需求 一&…

【时时三省】(C语言基础)结构化程序设计方法

山不在高&#xff0c;有仙则名。水不在深&#xff0c;有龙则灵。 ----CSDN 时时三省 结构化程序设计方法 结构化程序设计强调程序设计风格和程序结构的规范化&#xff0c;提倡清晰的结构。怎样才能得到一个结构化的程序呢?如果面临一个复杂的问题&#xff0c;是难以一下子写…

“国补”带火手机换新,出售旧手机应如何保护个人信息安全

在“国补”政策的推动下,手机换新热潮正席卷而来。“国补”以其诱人的补贴力度,成功激发了消费者更换手机的热情。无论是渴望体验最新技术的科技爱好者,还是对旧手机性能不满的普通用户,都纷纷投身到这场手机换新的浪潮之中。 随着大量消费者参与手机换新,二手手机市场迎来…

Flash-01

1-初始登录页面 2-【文件】-【新建】 3-【ActionScript3.0】 4-常用功能介绍【关闭/开启】 4-1-【关闭开始页】 勾选【不再提示】 4-2-【开启开始页】 【编辑】-【首选参数】-【常规】-【重置所有警告对话框】 5-恢复初始页面 【窗口】-【工作区】-【重置】 6-常用快捷键 …

Golang | 每日一练 (3)

&#x1f4a2;欢迎来到张胤尘的技术站 &#x1f4a5;技术如江河&#xff0c;汇聚众志成。代码似星辰&#xff0c;照亮行征程。开源精神长&#xff0c;传承永不忘。携手共前行&#xff0c;未来更辉煌&#x1f4a5; 文章目录 Golang | 每日一练 (3)题目参考答案map 实现原理hmapb…

DeepSeek掘金——基于DeepSeek-R1构建文档问答机器人

DeepSeek掘金——基于DeepSeek-R1构建文档问答机器人 在这个项目中,我们将结合本地 AI 的隐私与 Deepseek R1 的智能,创建一个完全本地化、推理驱动的问答机器人。 在人工智能 (AI) 日益融入我们日常生活的时代,一个问题仍然处于最前沿:隐私。尽管基于云的 AI 系统功能强大…

蓝桥杯学习笔记04-滑动窗口不定长(最短/最小)

题目来源 分享丨【题单】滑动窗口与双指针&#xff08;定长/不定长/单序列/双序列/三指针/分组循环&#xff09; - 力扣&#xff08;LeetCode&#xff09; 209. 长度最小的子数组 - 力扣&#xff08;LeetCode&#xff09; 题目要求大于等于 class Solution { public:int min…

基于WOA鲸鱼优化的BiLSTM双向长短期记忆网络序列预测算法matlab仿真,对比BiLSTM和LSTM

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 (完整程序运行后无水印) 2.算法运行软件版本 matlab2022a/matlab2024b 3.部分核心程序 &#xff08;完整版代码包含详细中文注释和操作步骤视频…

DeepSeek R1本地+私有云版医疗AI部署开发成功案例技术剖析

1. 引言 1.1 研究背景与意义 随着科技的飞速发展,人工智能(AI)在医疗领域的应用正逐渐成为推动医疗行业变革的重要力量。近年来,医疗 AI 取得了显著的进展,从疾病诊断、药物研发到医疗管理等各个环节,AI 技术都展现出了巨大的潜力。它能够处理和分析海量的医疗数据,为…

【行业解决方案篇十八】【DeepSeek航空航天:故障诊断专家系统 】

引言:为什么说这是“航天故障终结者”? 2025年春节刚过,航天宏图突然官宣"DeepSeek已在天权智能体上线",这个搭载在卫星和空间站上的神秘系统,号称能提前48小时预判99.97%的航天器故障。这不禁让人想起年初NASA禁用DeepSeek引发的轩然大波,更让人好奇:这套系…

四步彻底卸载IDEA!!!

各位看官早安午安晚安呀 如果您觉得这篇文章对您有帮助的话 欢迎您一键三连&#xff0c;小编尽全力做到更好 欢迎您分享给更多人哦 大家好&#xff0c;我们今天来学习四步彻底卸载IDEA&#xff01;&#xff01;&#xff01; 首先我要提醒各位 如果你想删除 IDEA 相关&#xf…

Codes 开源免费研发项目管理平台 2025年第一个大版本3.0.0 版本发布及创新的轻IPD实现

Codes 简介 Codes 是国内首款重新定义 SaaS 模式的开源项目管理平台&#xff0c;支持云端认证、本地部署、全部功能开放&#xff0c;并且对 30 人以下团队免费。它通过创新的方式简化研发协同工作&#xff0c;使敏捷开发更易于实施。并提供低成本的敏捷开发解决方案&#xff0…

BIRCH算法深度解析与实践指南

一、算法全景视角 BIRCH&#xff08;Balanced Iterative Reducing and Clustering using Hierarchies&#xff09;是首个针对超大规模数据集的聚类算法&#xff0c;可在有限内存下高效处理十亿级数据。其核心创新在于采用CF Tree数据结构&#xff0c;将数据压缩为多级聚类特征…