css 四角边框移动效果

news/2024/10/23 19:21:43/
  1. 块是长宽相等的正方形,大小浏览器分辨率变化而变化
  2. 利用平移变化translate来时实现边框到达鼠标划到的块,坐标是鼠标滑到块的offsetLeft和offsetTop
<!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>* {margin: 0;padding: 0;}html,body {width: 100%;height: 100%;}body {background-color: goldenrod;}.box {width: 80%;/* padding: 30px 20px; */margin: 50px auto;display: grid;grid-template-columns: repeat(3, 1fr);gap: 50px;background-color: goldenrod;position: relative;}.item {aspect-ratio: 1/1;background-color: cyan;}.item img {/* margin: 0;padding: 0; */display: block;width: 100%;height: 100%;}.pointer {cursor: pointer;position: absolute;/*线条的粗细*/--t: 3px;/*线条的长*/--l: 30px;/*线条离块的距离*/--g: 20px;/*块的大小*/--s: 400px;/*遮罩层的x坐标*/--x: 0px;/*遮罩层的y坐标*/--y: 0px;width: calc(var(--s) + 2 * var(--g));height: calc(var(--s) + 2 * var(--g));left: 0;top: 0;border: var(--t) solid #fff;margin-left: calc(-1 * var(--g));margin-top: calc(-1 * var(--g));transform: translate(var(--x), var(--y));transition: 0.5s;-webkit-mask: conic-gradient(at var(--l) var(--l), transparent 75%, blue 75% 100%) 0 0/calc(100% - var(--l)) calc(100% - var(--l));}
</style><body><div class="box"><div class="item"><img src="https://img2.baidu.com/it/u=2114237128,817343503&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=500"alt=""></div><div class="item"><img src="https://img2.baidu.com/it/u=2114237128,817343503&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=500"alt=""></div><div class="item"><img src="https://img2.baidu.com/it/u=2114237128,817343503&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=500"alt=""></div><div class="item"><img src="https://img2.baidu.com/it/u=2114237128,817343503&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=500"alt=""></div><div class="item"><img src="https://img2.baidu.com/it/u=2114237128,817343503&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=500"alt=""></div><div class="item"><img src="https://img2.baidu.com/it/u=2114237128,817343503&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=500"alt=""></div><div class="item"><img src="https://img2.baidu.com/it/u=2114237128,817343503&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=500"alt=""></div><div class="item"><img src="https://img2.baidu.com/it/u=2114237128,817343503&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=500"alt=""></div><div class="item"><img src="https://img2.baidu.com/it/u=2114237128,817343503&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=500"alt=""></div><div class="pointer"></div></div></body>
<script>const items = document.querySelectorAll('.box .item')const pointer = document.querySelector('.pointer')for (const item of items) {item.onmouseenter = function () {const width = item.clientWidthconst x = item.offsetLeftconst y = item.offsetToppointer.style.setProperty('--s', width + 'px')pointer.style.setProperty('--x', x + 'px')pointer.style.setProperty('--y', y + 'px')}}
</script></html>

http://www.ppmy.cn/news/990011.html

相关文章

shell编程 变量作用域

变量 变量赋值不用$&#xff0c;访问值时用$,赋值时两边不留空格&#xff0c;双引号括起来的变量被值替换{}标记变量开始和结束,变量名区分大小写&#xff0c;所有bash变量的值变量不区分类型&#xff0c;统一为字符串 变量类型 环境变量&#xff0c;子进程可以继承父进程环境…

mysql清除主从复制关系

mysql清除主从复制关系 mysql主从复制中,需要将主从复制关系清除,需要取消其从库角色。这可通过执行RESET SLAVE ALL清除从库的同步复制信息、包括连接信息和二进制文件名、位置。从库上执行这个命令后,使用show slave status将不会有输出。reset slave是各版本Mysql都有的功…

Doc as Code (3):业内人士的观点

作者 | Anne-Sophie Lardet 在技术传播国际会议十周年之际&#xff0c;Fluid Topics 的认证技术传播者和功能顾问 Gaspard上台探讨了“docOps 作为实现Doc as Code的中间结构”的概念。在他的演讲中&#xff0c;观众提出了几个问题&#xff0c;我们想分享Gaspard的见解&#x…

关于Anaconda环境配置的一些问题

文章目录 一、关于package文件安装位置二、关于尝试下载Python包时出现的CondaSSLError三、配置环境的整个流程四、如何在Jupyter中打开任意位置的文件夹五、如何在Jupyter对应的环境中安装包 一、关于package文件安装位置 package 文件安装在envs目录底下的Lib中&#xff0c;可…

【SpringBoot】简介及传统的 Spring 框架:对比和分析

哈喽&#xff0c;哈喽&#xff0c;大家好~ 我是你们的老朋友&#xff1a;保护小周ღ 今天给大家带来的是 SpringBoot 的简介&#xff0c;SpringBoot 项目的创建&#xff0c;相较于 Spring 框架的优点&#xff1a; 1. 快速的集成框架 2.内置运行容器, 快速的部署项目 3. 摒弃…

XMLHttpRequest (XHR) 与 fetch

XMLHttpRequest (XHR) 原理 XMLHttpRequest (XHR) 是一种在客户端和服务器之间进行异步数据交换的技术&#xff0c;它允许浏览器向服务器发送HTTP请求&#xff0c;获取数据并更新部分网页内容&#xff0c;而无需刷新整个页面。XHR 是现代Web开发中常用的一种技术&#xff0c;…

【优选算法题练习】day10

文章目录 一、137. 只出现一次的数字 II1.题目简介2.解题思路3.代码4.运行结果 二、剑指 Offer 53 - II. 0&#xff5e;n-1中缺失的数字1.题目简介2.解题思路3.代码4.运行结果 三、153. 寻找旋转排序数组中的最小值1.题目简介2.解题思路3.代码4.运行结果 总结 一、137. 只出现一…

使用pikachu管理工具下的XSS后台进行实战

写在前面的重要提示&#xff1a; Attention&#xff1a;技术没有好坏之分&#xff0c;关键在于使用技术的人或组织。网络安全技术是一把双刃剑 – 作为网络安全人&#xff0c;虽然无法控制头上的帽子是否会变绿&#xff0c;但能控制不让它变黑&#xff1b;无论我们在物质上面对…