CSS特效(二):利用html和css制作毛玻璃特效和按钮动画效果

2023-11-17

最终的效果图片:
在这里插入图片描述在这里插入图片描述
毛玻璃效果:在style标签中,在form表单的before中利用filter的blur属性以及box-shadow的值设置,就可以做出form表单后面的毛玻璃效果背景,还要记得设置form表单的display为flex布局,position为relative,form表单后的毛玻璃特效的position为absolute,所谓”子绝父相“。
按钮动画效果:利用的是button的beforeafter,设置display为block,设置其filter属性blur的值,获得静态的模糊效果,然后改变其hover之前和之后的transform中的translateX属性,转变时间transition设置为1s,即可看到动画效果。
做出这个效果后,我的感悟是:要特别注意position的设置以及overflow:hidden,先规划好整体布局,设置好静态效果,再做动态效果以及更加细节的部分。

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        body {
            margin: 0;
            padding: 0;
        }

        .contain {
            width: 100vw;
            height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            background: url(../img/night.jpg) fixed no-repeat;
            background-size: cover;
        }

        .log {
            width: 240px;
            height: 220px;
            display: flex;
            flex-direction: column;
            text-align: center;
            padding: 40px;
            position: relative;
            background: inherit;
            /* overflow很重要  如果没有它的话  毛玻璃特效 特别模糊  虽然不知道为啥 */
            overflow: hidden;
            border-radius: 16px;
            z-index: 100;
        }

        .log::before {
            content: "";
            width: calc(100% + 20px);
            height: calc(100% + 20px);
            display: block;
            position: absolute;
            left: -10px;
            top: -10px;
            background: inherit;
            box-shadow: inset 0 0 200px rgba(255, 255, 255, 0.25);
            filter: blur(6px);
            overflow: hidden;
            border-radius: 14px;
            z-index: -1;
        }

        h2 {
            font-size: 20px;
            font-weight: 400;
            color: rgb(21, 33, 32);
        }

        .log input,
        #btn {
            height: 32px;
            margin: 6px 0;
            background-color: rgba(255, 255, 255, 0.2);
            border-radius: 6px;
            border: none;
        }

        #btn{
            margin-top: 20px;
            cursor:pointer;
            position: relative;
            overflow: hidden;
            transition: 0.7s;
        }

        #btn:hover{
            background-color: rgb(144, 160, 167);
        }

        #btn::before,#btn::after{
            content: "";
            height:90px;
            width: 100px;
            display: block;
            background-color: mediumaquamarine;
            opacity: 0.5;
            filter: blur(30px);
            position: absolute;
            overflow: hidden;
            left:0;
            top:0;
            transform: skewX(-20deg);
            transform: translateX(-100px);
        }

        #btn::after{
            filter:blur(6px);
            width: 40px;
            left:60px;
            opacity: 0;
            background-color: rgba(64, 224, 208, 0.307);
        }

        #btn:hover::before{
            transform: translateX(320px);
            transition: 1s;
            opacity: 1;
           
        }
        #btn:hover::after{
            transform: translateX(320px);
            transition: 1s;
            opacity: 1;
        }
    </style>
</head>

<body>
    <div class="contain">
        <form action="#" class="log">
            <h2>登录</h2>
            <input type="text" name="username" placeholder="username">
            <input type="text" name="password" placeholder="password">
            <button id="btn">登录</button>
        </form>
    </div>
</body>
</html>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CSS特效(二):利用html和css制作毛玻璃特效和按钮动画效果 的相关文章

  • Chrome:网络元素自动移动

    我正在开发一个网络项目 在过去的两周里 我正在进行学期考试 所以我要休息一下 现在 既然他们已经结束了 我又继续我的工作了 但我发现我的一些Web 元素 如按钮 span 在 Chrome 上移动了一些像素 在 IE 和 Mozilla 上
  • 有没有基于 WPF 的 Markdown 渲染器? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我们有基于 WPF 的应用程序 我们有单独的字符串存储库 其中的文本在网络中进行编辑 在我们的 WPF
  • 如何使用 HTML5 地理位置查找用户所在的国家/地区?

    我熟悉 HTML5 地理定位 用于返回用户位置的粗略坐标 但是 如何返回其坐标所在国家 地区的名称 如果你只想要这个国家 这里有一个更简单的方法 使用ws geonames org http ws geonames org而不是谷歌 if
  • 哪种 Javascript 解决方案(不是 .htc)可以真正在 IE7 和 8 中实现抗锯齿圆角?

    哪种 JavaScript 解决方案 不是 htc 确实可以在 IE7 和 8 中实现抗锯齿圆角CSS3在支持的浏览器中给出 我尝试了很多 http www ruzee com blog ruzeeborders http www ruze
  • Android浏览器上的Web应用程序宽度问题

    所以到目前为止我只在 Android 浏览器上遇到过这个问题 基本上我的网站几乎一直运行良好 而且我还没有在 Dolphin Opera 或 Skyfire 上看到这个问题 但偶尔当我从手机主屏幕之一上的书签重新打开 Android 浏览器
  • 自定义 SVG 未加载到我的图像标签中

    目前我正在尝试将自定义 svg 组件加载到图像标签内 但由于某种原因 我无法看到地图组件内的 svg 图像 我的自定义 SVG 文件如下所示 我在 SVG 中加载另一个图像
  • 推文按钮不出现

    我正在尝试向 html 页面添加一个 tweet 按钮 我使用 Twitter 按钮生成器中的官方代码 http twitter com about resources buttons tweet http twitter com abou
  • Bootstrap 标签栏平滑移动导航按钮

    我有一个用于切换块的普通引导选项卡面板 在导航中切换块时 活动选项卡会突出显示 但现在 当我单击活动选项卡的背景时 它会立即发生变化 是否可以使切换选项卡时背景不会立即改变 而是根据需要哪个选项卡而平滑地左右移动 这可以用以下方法完成吗cs
  • 文本的彩虹色

    rainbowtext background image webkit gradient linear left top right top color stop 0 f22 color stop 0 15 f2f color stop 0
  • a:悬停颜色不起作用

    一件很奇怪的事情 我想在悬停时更改链接的文本颜色和背景颜色 这是代码 css link menu a color white display block height 100 width 100 text decoration none t
  • 尝试从网页Python和BeautifulSoup获取编码

    我试图从网页检索字符集 这会一直改变 目前我使用 beautifulSoup 来解析页面 然后从标题中提取字符集 这工作正常 直到我遇到一个网站 到目前为止 我的代码以及与其他页面一起使用的代码是 def get encoding soup
  • JavaFX使节点覆盖父节点边框颜色

    我有一个如下所示的节点 仅使用 css 我希望标签覆盖其父边框颜色 因此标签下方的边框颜色部分变得不可见 我用来制作这个边框的CSS代码 fx border color black fx border width 3 fx border r
  • 不要包裹 span 元素

    我有一份清单 span 可以在 a 内左右移动的元素 div 元素 如果某些跨度超出了 div 它们应该被隐藏 这可以很好地使用overflow hidden 但是 如果跨度超出了 div 的容纳范围 跨度就会换行 这对于我的用例来说是不期
  • 哪些 HTML 元素不能包含子节点?

    我一直在寻找一份详尽的清单 但在任何地方都找不到 为了避免必须仔细阅读规范 有谁知道它们是什么 我认为可以包含子元素的补充元素列表也很有用 XHTML 1 和 HTML5 之间的列表有何不同 您可以在以下位置找到 void 元素 不能有任何
  • Next.js:错误:React.Children.only 期望接收单个 React 元素子元素

    我有一个名为Nav inside components目录及其代码如下所示 import Link from next link const Nav gt return div a Home a a About a div export d
  • 如何根据另一个下拉列表中的选择动态填充下拉列表中的选项?

    我有一个表 其中包含类别信息 例如产品 我已将它们列在下拉菜单中 现在 我需要做的是 在下一个下拉菜单中列出所选类别的子类别 我希望 javascript 是必需的 但我对 javascript 还不太熟悉 将非常感谢您的帮助 你应该使用
  • 嵌套 DIV 的类似斑马的 CSS 样式

    我嵌套了 DIV 元素 但我不知道嵌套的级别 我需要每个都有与其父级不同的背景 创建类似斑马的颜色 我只使用两种背景 深色和白色 效果需要类似于在容器中设置奇数和偶数子级的样式 但在我的例子中 子级是嵌套的 我可以使用每个嵌套元素的规则来做
  • 中有样式表 吗?

    在内部链接 CSS 文件是一个坏主意吗 body 我读过 如果浏览器在外部找到另一个 CSS 文件 则它会被迫重新开始 CSS 渲染 head 只是因为它可能需要将样式应用于已经渲染的元素 另外 我认为 HTML 无法正确验证 我需要确认这
  • Jquery 以编程方式更改

    文本

    编辑 解决方案是将其添加到个人资料页面而不是性别页面 profile live pageinit function event p pTest text localStorage getItem gender 我在列表视图中有一个带有一些文
  • HTML 表格 - 固定列宽和多个可变列宽

    我必须建立一个有 5 列的表 表格宽度是可变的 内容宽度的 50 有些列包含固定大小的按钮 因此这些列应该有一个固定大小 例如 100px 有些列中有文本 所以我希望这些列具有可变的列宽 例如 Column1 tablewidth sum

随机推荐

  • 单片机串口中断以及消息收发处理——对接受信息进行判断实现控制

    目录 本次自己捣鼓的问题 自己摸索的一个实验 实现效果 初步基础 实现步骤 实验结果 主要代码 本次自己捣鼓的问题 自己摸索的一个实验 以51的单片机来说 用定时器2作为串口1来进行串口实验 检验以下的数据 任意数据 hello 1 yzh
  • npm node-sass 安装错误

    控制台运行npm install时报错 报错信息如下 npm ERR code ELIFECYCLE npm ERR errno 1 npm ERR node sass 4 9 2 postinstall node scripts buil
  • log4j2漏洞原理简述

    影响版本 Apache Log4j 2 x lt 2 14 1 jdk不知道 有知道的师傅麻烦告诉下 漏洞原理 由于Apache Log4j存在递归解析功能 lookup 未取得身份认证的用户 可以从远程发送数据请求输入数据日志 轻松触发漏
  • JAVA 基数排序算法(详细实现过程介绍)

    基数排序 是将整数按位数切割成不同的数字 然后按每个位数分别比较从而得到有序的序列 本文以数组中元素均为正整数来演示 给定一个数组 arr 53 3 542 748 14 214 准备十个桶 0 9 第一轮按照元素的个位数排序 0 9的各个
  • ffmpeg提取视频分辨率输出为批处理变量

    在使用ffmpeg批处理编码视频时候 如果导入的素材尺寸不一样 得每次输入分辨率很麻烦 这里提供一个自动提取拖入的视频文件的分辨率的批处理脚本 另存为bat即可 需要文件夹下有ffprobe exe 原理是通过ffprobe exe把媒体信
  • Python 列表的定义

    视频版教程 Python3零基础7天入门实战视频教程 容器 容器是一种可以存储多个元素的数据类型 Python中的容器有 列表list 元组tuple 字符串str 集合set 字典dict 列表list 列表是多个元素的集合 列表的定义
  • 安装LR提示“此计算机缺少 vc2005_sp1_with_atl_fix_redist,请安装所有缺少的必要组件,然后重新运行此安装“

    安装LoadRunner 11时弹窗提示 Micosoft Visual C 2005 SP1 可再发行组件包 X86 命令行选项语法错误 键入命令 可获得帮助信息 或者弹窗提示 此计算机缺少 vc2005 sp1 with atl fix
  • 如何更好地使用Kafka?

    引言 要确保Kafka在使用过程中的稳定性 需要从kafka在业务中的使用周期进行依次保障 主要可以分为 事先预防 通过规范的使用 开发 预防问题产生 运行时监控 保障集群稳定 出问题能及时发现 故障时解决 有完整的应急预案 这三阶段 事先
  • vue2父子组件双向绑定

    一 v model指令 当在Vue 2中实现父子组件的双向数据绑定时 主要涉及以下几个步骤 在父组件中定义要传递给子组件的数据 并使用v model指令将数据传递给子组件 在子组件中声明一个props接收来自父组件的数据 并在子组件内部使用
  • .NET 最便捷的Log4Net日志记录器

    最便捷的Log4Net使用方法 LOG4NET 配置日志记录器 开始 引用nuget LOG4NET 配置日志记录器 Apache log4net 库是一个帮助程序员将日志语句输出到各种的工具 的输出目标 log4net是优秀的Apache
  • C语言面试题之字符串操作

    今 天做了花了几分钟做了三道C语言面试题 跟大家分享一下 找错 Void test1 char string 10 char str1 0123456789 strcpy string str1 答 string 大小不够 str1末尾还有
  • 无人机通信网络资源分配与优化matlab源码

    作者简介 热爱科研的Matlab仿真开发者 修心和技术同步精进 matlab项目合作可私信 个人主页 Matlab科研工作室 个人信条 格物致知 内容介绍 近年来 无人机已广泛应用到许多的研究领域 不久的将来大量的无人机会如同雨后春笋般涌现
  • 静态代理模式

    package com kuang Demo04 静态代理总结 真实对象和代理对象都要实现同一个接口 代理对象要代理真实对象 好处 代理对象可以做很多真实对象做不了的事情 真实对象可以专注做自己的事情 public class Static
  • Node.js教程,Node.js服务器项目《听歌识曲》

    Node js是前端学习必学的 今天就给大家分享的就是Node js做的一个服务器项目教程 课程简介 基于Node js开发的Express框架快速搭建web服务器 配合Mongodb数据库 让前端开发者也能将静态页面功能化 主讲内容 1
  • Docker: getsockopt: connection refused 问题解决

    操作系统 centos7 问题描述 部署好的harbor无法从其他服务器登陆 问题原因 docker1 3 2版本开始默认docker registry使用的是https 而我们设置Harbor默认http方式 所以当执行用docker l
  • Qt中获取路径

    使用QDir QDir sourceDir QDir currentPath 此路径是项目编译生成的路径即可执行文件所在目录 QCoreApplication applicationDirPath 此路径是项目bulid生成的路径 是资源路
  • input标签是什么?input标签属性有哪些

    input标签属于什么标签 input标签属性有哪些 相信刚接触的表单的小白应该很陌生 那么接下来我们就来讲一下input标签属性有哪些 首先小编在这里谢谢大家一直的支持 每天都会更新十个web前端基础内容 需要的可以关注我 另外也可以进我
  • maven将本地jar打包到war中

    directory为本地jar的目录 targetPath为war包的的jar路径
  • CentOS7与CentOS8的区别

    8版本的 Python 3 PHP 7 2 Ruby 2 5 Node js 10 java OpenJDK 11 OpenJDK 8 IcedTea Web和各种Java工具 如Ant Maven或Scala 7支持以下编辑语言 Pyth
  • CSS特效(二):利用html和css制作毛玻璃特效和按钮动画效果

    最终的效果图片 毛玻璃效果 在style标签中 在form表单的before中利用filter的blur属性以及box shadow的值设置 就可以做出form表单后面的毛玻璃效果背景 还要记得设置form表单的display为flex布局