css+js实现鼠标移动边框高亮效果

前言:效果是鼠标移入空白区域,边框高亮的效果。效果是在douyin的渡一教育袁老师的课程学习到的,观看以后是一个实用的小特效。想看的可以平台查询,自己也学到了知识。

在这里插入图片描述

<!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 {
      background: #000;
    }
    .card-wrap {
      display: grid;
      margin: 0 auto;
      width: 90%;
      margin-top: 1em;
      color: #f0f0f0;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
      text-align: center;
    }
    .card {
      aspect-ratio: 4/3;
      border-radius: 8px;
      background-color: rgba(255, 255, 255, .1);
      position: relative;
      overflow: hidden;
    }
    .card .inner {
      position: absolute;
      inset: 2px;
      background-color: #222;
      border-radius: inherit;
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 3;
    }
    .card::before {
      content: "";
      position: absolute;
      z-index: 2;
      top: 0;
      left: 0;
      inset: 0;
      background: radial-gradient(closest-side circle, rgba(255, 255, 255, 0.6) 0%, transparent);
      border-radius: inherit;
      transform: translate(var(--x, -1000px), var(--y, -1000px));
    }
  </style>
</head>
<body>
  <div class="card-wrap">
    <div class="card">
      <div class="inner">wish you every success</div>
    </div>
    <div class="card">
      <div class="inner">wish you every success</div>
    </div>
    <div class="card">
      <div class="inner">wish you every success</div>
    </div>
    <div class="card">
      <div class="inner">wish you every success</div>
    </div>
    <div class="card">
      <div class="inner">wish you every success</div>
    </div>
    <div class="card">
      <div class="inner">wish you every success</div>
    </div>
  </div>

  <script>
    const cardWrapEl = document.querySelector(".card-wrap")
    const cardEls = document.querySelectorAll(".card")

    cardWrapEl.onmousemove = function (e) {
      for (const card of cardEls) {
        // getBoundingClientRect提供了元素的大小及其相对于视口的位置。
        const react = card.getBoundingClientRect()
        const x = e.clientX - react.left - react.width / 2
        const y = e.clientY - react.top - react.height / 2
        card.style.setProperty('--x', `${x}px`)
        card.style.setProperty('--y', `${y}px`)
      }
    }
  </script>
</body>
</html>

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

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

相关文章

[RoarCTF2019] TankGame

不多说&#xff0c;用dnspy反编译data文件夹中的Assembly-CSharp文件 使用分析器分析一下可疑的FlagText 发现其在WinGame中被调用&#xff0c;跟进WinGame函数 public static void WinGame(){if (!MapManager.winGame && (MapManager.nDestroyNum 4 || MapManager.n…

060:vue中markdown编辑器mavon-editor的应用示例

第060个 查看专栏目录: VUE ------ element UI 专栏目标 在vue和element UI联合技术栈的操控下&#xff0c;本专栏提供行之有效的源代码示例和信息点介绍&#xff0c;做到灵活运用。 &#xff08;1&#xff09;提供vue2的一些基本操作&#xff1a;安装、引用&#xff0c;模板使…

网站服务器被入侵,如何排查,该如何预防入侵呢?

在我们日常使用服务器的过程中&#xff0c;当公司的网站服务器被黑客入侵时&#xff0c;导致整个网站以及业务系统瘫痪&#xff0c;将会给企业带来无法估量的损失。作为服务器的维护人员应当在第一时间做好安全响应&#xff0c;对入侵问题做到及时处理&#xff0c;以最快的时间…

FileZilla的使用主动模式与被动模式

&#x1f3ac; 艳艳耶✌️&#xff1a;个人主页 &#x1f525; 个人专栏 &#xff1a;《产品经理如何画泳道图&流程图》 ⛺️ 越努力 &#xff0c;越幸运 目录 一、FileZilla简介 1、FileZilla是什么&#xff1f; 2、FileZilla的应用场景 二、FileZilla的安装 1、下…

播放海康摄像头直播流使用笔记

1、将海康摄像头绑定到萤石云平台&#xff0c;并查看直播流 2、项目中使用 1、安装hls cnpm i hls.js 2、封装组件&#xff08;在components文件夹下新建bodyCapture文件夹下index.vue&#xff09; <template><el-dialogtitle"遗体抓拍"class"bo…

ES的使用(Elasticsearch)

ES的使用&#xff08;Elasticsearch&#xff09; es是什么&#xff1f; es是非关系型数据库&#xff0c;是分布式文档数据库&#xff0c;本质上是一个JSON 文本 为什么要用es? 搜索速度快&#xff0c;近乎是实时的存储、检索数据 怎么使用es? 1.下载es的包&#xff08;环境要…

GreatSQL 8.0.32-25新版本有奖体验!

&#xff08;1&#xff09;活动简介 2023.12.28——2024.1.15 期间&#xff0c;参与 GreatSQL 8.0.32-25 新版本体验测试活动&#xff0c;只要发现并提交有效错误或 bug、或文档手册问题&#xff0c;即可获得社区周边、社区金币奖励&#xff01;GreatSQL 期待您的参与~ &…

2023年华为OD机试(python)B卷-高效的任务规划

一、题目 题目描述&#xff1a; 你有 n 台机器编号为 1~n&#xff0c;每台都需要完成完成一项工作&#xff0c;机器经过配置后都能完成独立完成一项工作。 假设第i台机器你需要花B分钟进行设置&#xff0c;然后开始运行&#xff0c;J分钟后完成任务。 现在&#xff0c;你需要选…

骑砍战团MOD开发(27)-module_tableau_materials.py材质

一.配置材质资源 OpenBrf寻找对应材质资源. tableau配置材质资源 ("round_shield_1", 0, "sample_shield_round_1", 512, 256, 0, 0, 0, 0,[(store_script_param, ":banner_mesh", 1),(set_fixed_point_multiplier, 100),(init_position, pos1),…

证件照3秒换底色|有手机就行,一学就会

友友们&#xff0c;你还在求你的设计师朋友给你证件照换底色吗&#xff1f; 支付宝搜索"亿鸣证件照"小程序或微信搜索"随时照"小程序&#xff0c;选择"换底色”功能&#xff0c;上传一张个人生活照&#xff0c;就能一键换底色了&#xff0c;再也不用求…

MySQL的高级SQL语句

目录 1.mysql高阶查询 select&#xff1a;显示表格中一个或数个字段的所有数据记录 distinct&#xff1a;不显示重复的数据记录 where&#xff1a;有条件查询 AND OR &#xff1a;且 或 in&#xff1a;显示已知值的数据记录 between&#xff1a;显示两个值范围内的数据记…

Elasticsearch:升级索引以使用 ELSER 最新的模型

在此 notebook 中&#xff0c;我们将看到有关如何使用 Reindex API 将索引升级到 ELSER 模型 .elser_model_2 的示例。 注意&#xff1a;或者&#xff0c;你也可以通过 update_by_query 来更新索引以使用 ELSER。 在本笔记本中&#xff0c;我们将看到使用 Reindex API 的示例。…

FPGA 底层资源介绍

Xilinx FPGA底层资源介绍 本文转载自&#xff1a;瓜大三哥微信公众号 XILINX FPGA 芯片整体架构如下所示&#xff0c;整个芯片是以BANK进行划分的&#xff0c;不同的工艺、器件速度和对应的时钟具有不同的BANK数量&#xff08;下面截图是以K7325tffg676为例&#xff09;&…

【Unity入门】UGUI之Slider(滑动条)

目录 什么是Slider&#xff1f;Slider属性与功能 什么是Slider&#xff1f; Slider控件允许用户可以通过鼠标来在预先确定的范围调节数值 我们可以在Hierarchy视图右键 -> UI ->Slider来创建滑动条 通过上图可以发现Unity内置的Slider主要有3部分&#xff0c;一个是最…

还在用Jekins?快来试试这款比Jekins简而轻的自动部署软件!

大家好&#xff0c;我是 Java陈序员。 在工作中&#xff0c;你是否遇到过团队中没有专业的运维&#xff0c;开发还要做运维的活&#xff0c;需要自己手动构建、部署项目&#xff1f; 不同的项目还有不同的部署命令&#xff0c;需要使用 SSH 工具连接远程服务器和使用 FTP 文件…

【算法】枪打出头鸟(js)

牛客链接&#xff1a;https://www.nowcoder.com/practice/1504075c856248748ca444c8c093d638?tpId196&&tqId37268&rp1&ru/ta/job-code-total&qru/ta/job-code-total/question-ranking 本人题解&#xff1a; /*** 代码中的类名、方法名、参数名已经指定&a…

Go 如何通过代码进行格式化 gomft命令

我们都知道 使用JetBrains GoLand 快捷键可以快速对代码进行格式化 现在将使用go的代码进行格式化 源代码如下&#xff1a; package mainimport "fmt"func main() {var n1 int 19var n2 float32 4.78//var n3 bool false//var n4 byte avar s1 string…

Oracle VirtualBox中Linux系统基本使用方法——备赛笔记——2024全国职业院校技能大赛“大数据应用开发”赛项——任务2:离线数据处理

前言 小北的这篇博客介绍的是关于用VirtualBox中下载好的ubuntu系统中&#xff0c;为搭建Hadoop平台所做的命令操作准备&#xff0c;希望能帮助不会的人有指引作用。 没有安装好VirtualBox中的ubuntu系统的请参考小北之前的两篇博客&#xff1a; ubuntu18.04 64 位安装笔记—…

node fs模块写入文件 writeFile、writeFileSync、fsPromises.writeFile、createWriteStream

文章目录 1.writeFile2.writeFileSync3.fsPromises.writeFile4.createWriteStream 1.writeFile 它是一个异步写入的方法 函数参数 file <string> | <Buffer> | <URL> | <integer> 文件名或文件描述符 data <string> | <Buffer> | <Typ…

安装 PyQt5 保姆级教程

作者&#xff1a;billy 版权声明&#xff1a;著作权归作者所有&#xff0c;商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处 前言 博主之前做应用层开发用的一直是 Qt&#xff0c;这次尝试一下在 python 中使用 Pyqt5 模块来开发 UI 界面&#xff0c;这里做一些…