鼠标移到图片上,光线闪过效果的实现

本文用两种方式实现了鼠标移动到图片上时,有光线闪过的效果。

第一种:使用::before伪元素实现。

1.html代码部分

<div class='container'><div class="item"><a href="#"><div><img src="./img/dizi.jpg" /></div></a></div><div class="item"><a href="#"><div><img src="./img/yishu.jpg" /></div></a></div><div class="item"><a href="#"><div><img src="./img/laikang.jpg" /></div></a></div>
</div>

2.css代码部分

实现思路:
使用伪元素::before在item的前面放置一个盒子,内容为空,设置盒子的宽度高度,初始位置在.item的左侧,结束位置在.item的右侧,光线效果使用linear-gradient线性渐变,并让盒子绕x轴倾斜-25deg
当鼠标移到.item图片上时,这个光线盒子从左边移动到右边

			.container {width: 1000px;margin: 20px auto;height: 200px;display: flex;justify-content: space-between;}.container .item {position: relative;width: 300px;overflow: hidden;}.container .item img {width: 100%;height: 200px;}.container .item::before {content: '';position: absolute;width: 200px;height: 100%;top: 0;left: -150%;   /*初始水平位置,光线用渐变效果生成*/background-image: linear-gradient(rgba(255, 255, 255, 0) 0,rgba(255, 255, 255, 0.2) 50%,rgba(255, 255, 255, 0) 100%);transform: skewX(-25deg);}.item:hover::before {left: 150%;	/*结束处的水平位置*/transition: all .5s ease 0s;  /*过渡效果*/}

第二种:额外添加标记<i></i>实现

1.html代码部分

增加<i></i>标记

	<div class="item"><a href="#"><div><img src="./img/laikang.jpg" /></div></a><i class="light"></i></div>

2.css代码部分

实现思路:和第一种基本一样,区别是这里用的hsla颜色值,第一种用的是rgba颜色值

	.item {position: relative;width: 300px;height: 200px;overflow: hidden;}.item img {width: 100%;height: 100%;}.item .light {cursor: pointer;position: absolute;left: -150%;   	/*初始水平位置*/top: 0;width: 100%;height: 100%;background-image: linear-gradient(0deg, hsla(0, 0%, 100%, 0), hsla(0, 0%, 100%, .5), hsla(0, 0%, 100%, 0));transform: skewX(-25deg); /*绕X轴倾斜-25度*/}.item:hover .light {transition: all .5s ease;  /*过渡效果*/left: 150%;    	/*结束水平位置*/}

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue3实战Easy云盘(一):创建项目+登录注册页面+构建框架页+上传头像/修改密码/退出登录

一、创建项目 1.创建项目 2.安装各种依赖 npm install highlightjs/vue-plugin moefe/vue-aplayer aplayer axios docx-preview dplayer element-plus highlight.js js-md5 sass sass-loader spark-md5 vue-clipboard3 vue-cookies vue-pdf-embed vue-router …

Linux系统(CentOS)下安装配置 Nginx 超详细图文教程

一、下载并安装 1.打开nginx官网并点击右侧的download&#xff0c;Nginx官网下载地址 2.选择稳定版本 我放在/usr/local/nginx/下&#xff0c;新建文件夹 mkdir /usr/local/nginx/ 通过xftp传输到Linux的服务器上&#xff0c;这里方法不过多复述。 或者如果Linux联网&#xf…

Hystrix服务熔断

服务熔断 熔断机制是应对雪崩效应的一种微服务链路保护机制。当某个微服务不可用或者响应时间太长时&#xff0c; 会进行服务降级&#xff0c;进而熔断该节点微服务的调用&#xff0c;快速返回“错误”的响应信息。当检测到该节点微 服务调用响应正常后恢复调用链路。 在Spri…

鸿蒙开发:【从TypeScript到ArkTS的适配规则】

从TypeScript到ArkTS的适配规则 ArkTS通过规范约束了TypeScript&#xff08;简称TS&#xff09;中过于灵活而影响开发正确性或者给运行时带来不必要额外开销的特性。本文罗列了所有在ArkTS中限制的TS特性&#xff0c;并提供了重构代码的建议。ArkTS保留了TS大部分的语法特性&a…

半监督的GCN:Semi-Supervised Classification With Graph Convolutional Networks

Semi-Supervised Classification With Graph Convolutional Networks -Theophilus Siameh-2017(2023) 思路 使用可扩展方法对图进行半监督学习,其中CNN应用在图数据上,得到GCN。 这种方法是在图的边的数量上进行线性的缩放模型,并学习包含局部图结构和图节点的几个隐藏层…

红米Turbo3小米平板6SPro澎湃OS系统强解BL锁-跳小米社区绑定-刷ROOT权限

红米Turbo3小米平板6SPro这2款设备都出厂为澎湃OS系统&#xff0c;官方提供都是小米社区申请解锁权限&#xff0c;然后自己答题解锁&#xff0c;门槛非常高&#xff0c;想要玩机root的用户&#xff0c;都在堵在门外。还在这目前这两款机型官方并没有加入强制验证&#xff0c;在…

【深度学习实战(33)】训练之model.train()和model.eval()

一、model.train()&#xff0c;model.eval()作用&#xff1f; model.train() 和 model.eval() 是 PyTorch 中的两个方法&#xff0c;用于设置模型的训练模式和评估模式。 model.train() 方法将模型设置为训练模式。在训练模式下&#xff0c;模型会启用 dropout 和 batch norm…

pytorch常用内置loss函数与正则化技术(补充小细节)

文章目录 前言一、常用损失函数(后面用到了新的会一一补充)1.1 回归中的损失函数1.1.1 nn.MSELoss()示例1:向量-向量示例2:矩阵--矩阵(维度必须一致才行)1.2 分类中的损失函数1.2.1 二分类(1)nn.BCELoss --- 二分类交叉熵损失函数示例1:向量-向量示例2:矩阵--矩阵(维…

NeoVim配置文件基本的

init.lua 文件 require(options) require(keymaps) require(plugins) require(colorscheme) require(lsp)-- 插件 require("config.lualine") require("config.nvim-tree") require("config.treesitter")~\lua\plugins.lua 文件 local lazypa…

基于SSM的“基于协同过滤的在线通用旅游平台网站”的设计与实现(源码+数据库+文档)

基于SSM的“基于协同过滤的在线通用旅游平台网站”的设计与实现&#xff08;源码数据库文档) 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;SSM 工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 系统主界面 景点信息界面 后台界面 部分源码…

【每日刷题】Day39

【每日刷题】Day39 &#x1f955;个人主页&#xff1a;开敲&#x1f349; &#x1f525;所属专栏&#xff1a;每日刷题&#x1f34d; &#x1f33c;文章目录&#x1f33c; 1. 622. 设计循环队列 - 力扣&#xff08;LeetCode&#xff09; 2. 387. 字符串中的第一个唯一字符 - …

百度云防护502 Bad Gateway原因总结和处理方法

最近&#xff0c;随着原百度云加速用户新接入百度云防护后&#xff0c;很多站长反馈网站打不开&#xff0c;出现了502 Bad Gateway的情况。 为此&#xff0c;百度云这里给大家总结下&#xff0c;出现502的大概几个原因&#xff1a; 1.服务器防火墙拦截了百度云防护的IP节点请求…

vivado Kintex UltraScale+ 配置存储器器件

Kintex UltraScale 配置存储器器件 下表所示闪存器件支持通过 Vivado 软件对 Kintex UltraScale 器件执行擦除、空白检查、编程和验证等配置操作。 本附录中的表格所列赛灵思系列非易失性存储器将不断保持更新 &#xff0c; 并支持通过 Vivado 软件对其中所列非易失性存…

【VUE.js】前端框架——未完成

基于脚手架创建前端工程 环境 当安装node.js时&#xff0c;它本身就携带有npm命令。&#xff08;-v 查版本号&#xff09;安装VUE CLI npm i vue/cli -g&#xff08;全局&#xff09; 创建 vue create 【project name】 镜像源解决方案 输入创建命令后&#xff0c;提示检查更…

【JAVA】JAVA的垃圾回收机制详解

对于Java的垃圾回收机制&#xff0c;它是Java虚拟机&#xff08;JVM&#xff09;提供的一种自动内存管理机制&#xff0c;主要负责回收不再使用的对象以释放内存空间。垃圾回收机制主要包括以下几个方面的内容&#xff1a; 垃圾对象的识别&#xff1a;Java虚拟机通过一些算法&…

Taro@3.x+Vue@3.x+TS开发微信小程序,网络请求封装

参考文档 Taro.request(option) 在 src/http 下创建 request.ts, 写入如下配置&#xff1a; import Taro from tarojs/taro import { encryptData } from ./encrypt // 请求数据加密&#xff0c;可选console.log(NODE_ENV, process.env.NODE_ENV) console.log(TARO_APP_PROX…

C++学习笔记3

A. 求出那个数 题目描述 喵喵是一个爱睡懒觉的姑娘&#xff0c;所以每天早上喵喵的妈妈都花费很大的力气才能把喵喵叫起来去上学。 在放学的路上&#xff0c;喵喵看到有一家店在打折卖闹钟&#xff0c;她就准备买个闹钟回家叫自己早晨起床&#xff0c;以便不让妈妈这么的辛苦…

Leetcode 3143. Maximum Points Inside the Square

Leetcode 3143. Maximum Points Inside the Square 1. 解题思路2. 代码实现 题目链接&#xff1a;3143. Maximum Points Inside the Square 1. 解题思路 这一题由于都是从中心开始的正方形&#xff0c;因此&#xff0c;我们只要找到所有tag下的点距离中心的位置最小的点&…

Caddy2使用阿里云DNS申请https证书,利用阿里云DNS境内外不同解析给Gone文档做一个同域名的国内镜像站点

我从头到尾实现了一个Golang的依赖注入框架&#xff0c;并且集成了gin、xorm、redis、cron、消息中间件等功能&#xff1b;自己觉得还挺好用的&#xff0c;并且打算长期维护&#xff01; github地址&#xff1a;https://github.com/gone-io/gone 文档原地址&#xff1a;https:/…

2024CCPC郑州站超详细题解(含题面)ABFHJLM(河南全国邀请赛)

文章目录 前言A Once In My LifeB 扫雷 1F 优秀字符串H 随机栈J 排列与合数L Toxel 与 PCPC IIM 有效算法 前言 这是大一博主第一次参加xcpc比赛&#xff0c;虽然只取得了铜牌&#xff0c;但是收获满满&#xff0c;在了解了和别人的差距后会更加激励自己去学习&#xff0c;下面…