react小案例分享——鼠标划过显示内容

2023-10-13 21:59

本文主要是介绍react小案例分享——鼠标划过显示内容,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

我们写react代码,做列表List展示操作时,遇到鼠标移入元素,弹出浮层,这样的功能,我们做这样的功能时会可以利用antd提供的Popover气泡卡片,或者Tooltip文字提示,但是这两个只是针对,再也页面的各个方向的提示内容,还是有一定的局限性。

 如果上面我们需要显示在列表卡片的框上面显示半透明的浮层,在浮层上面显示一些基本的操作时,就需要我们自己结合js的鼠标移出移入的事件来操作,但是今天我想提供的一种更加便捷的方式,利用css的hover属性,来显示半透明蒙层。

首先我们先写一个多个卡片展示的内容,

  let arrs = [1,2,3,4,5,6,7,8]let list = arrs.map((item,index) =>{return (<li className={styles.Li}key={index}>《{index}》</li>)})return list

如上图显示的七个卡片内容展示

然后我们再li标签里面添加一个蒙层所需要的内容

然后 我们需要利用position属性,给他的父级li做一个相对定位relative, 自己做绝对定位,这样这样我们的蒙层就会相对于父级Li进行定位展示,然后重点把蒙层的内容进行隐藏,等待鼠标划过的时候显示内容,利用visibility做这一步。

最后我们通过hover事件,进行对蒙层的样式,显示 visibility: visible; 就可以了

 最终页面显示不论我滑动到哪都会显示蒙层以及内容:

部分完整代码:

// jsxconst mian = () => {let arrs = [1,2,3,4,5,6,7,8]let list = arrs.map((item,index) =>{return (<li className={styles.Li} key={index}>《{index}》<li className={styles.bgMian}>蒙层内容是{index}</li></li>)})return list}// css /*父级*/
.Li {width: 60px;height: 60px;margin: 5px;background: #5cacf8;align-items: center;justify-content: center;display: flex;position: relative;
}
/*蒙层*/
.bgMian {visibility: hidden;position: absolute;top: 0;left: 0;width: 60px;height: 60px;
}
.Li:hover .bgMian {color: #4090f7;visibility: visible;background: rgba(0, 0, 0, .6);
}

这篇关于react小案例分享——鼠标划过显示内容的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/206129

相关文章

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

RabbitMQ消费端单线程与多线程案例讲解

《RabbitMQ消费端单线程与多线程案例讲解》文章解析RabbitMQ消费端单线程与多线程处理机制,说明concurrency控制消费者数量,max-concurrency控制最大线程数,prefe... 目录 一、基础概念详细解释:举个例子:✅ 单消费者 + 单线程消费❌ 单消费者 + 多线程消费❌ 多

OpenCV在Java中的完整集成指南分享

《OpenCV在Java中的完整集成指南分享》本文详解了在Java中集成OpenCV的方法,涵盖jar包导入、dll配置、JNI路径设置及跨平台兼容性处理,提供了图像处理、特征检测、实时视频分析等应用... 目录1. OpenCV简介与应用领域1.1 OpenCV的诞生与发展1.2 OpenCV的应用领域2

linux批量替换文件内容的实现方式

《linux批量替换文件内容的实现方式》本文总结了Linux中批量替换文件内容的几种方法,包括使用sed替换文件夹内所有文件、单个文件内容及逐行字符串,强调使用反引号和绝对路径,并分享个人经验供参考... 目录一、linux批量替换文件内容 二、替换文件内所有匹配的字符串 三、替换每一行中全部str1为st

从入门到精通详解LangChain加载HTML内容的全攻略

《从入门到精通详解LangChain加载HTML内容的全攻略》这篇文章主要为大家详细介绍了如何用LangChain优雅地处理HTML内容,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录引言:当大语言模型遇见html一、HTML加载器为什么需要专门的HTML加载器核心加载器对比表二

Windows环境下解决Matplotlib中文字体显示问题的详细教程

《Windows环境下解决Matplotlib中文字体显示问题的详细教程》本文详细介绍了在Windows下解决Matplotlib中文显示问题的方法,包括安装字体、更新缓存、配置文件设置及编码調整,并... 目录引言问题分析解决方案详解1. 检查系统已安装字体2. 手动添加中文字体(以SimHei为例)步骤

MySql基本查询之表的增删查改+聚合函数案例详解

《MySql基本查询之表的增删查改+聚合函数案例详解》本文详解SQL的CURD操作INSERT用于数据插入(单行/多行及冲突处理),SELECT实现数据检索(列选择、条件过滤、排序分页),UPDATE... 目录一、Create1.1 单行数据 + 全列插入1.2 多行数据 + 指定列插入1.3 插入否则更

Python通用唯一标识符模块uuid使用案例详解

《Python通用唯一标识符模块uuid使用案例详解》Pythonuuid模块用于生成128位全局唯一标识符,支持UUID1-5版本,适用于分布式系统、数据库主键等场景,需注意隐私、碰撞概率及存储优... 目录简介核心功能1. UUID版本2. UUID属性3. 命名空间使用场景1. 生成唯一标识符2. 数

PostgreSQL的扩展dict_int应用案例解析

《PostgreSQL的扩展dict_int应用案例解析》dict_int扩展为PostgreSQL提供了专业的整数文本处理能力,特别适合需要精确处理数字内容的搜索场景,本文给大家介绍PostgreS... 目录PostgreSQL的扩展dict_int一、扩展概述二、核心功能三、安装与启用四、字典配置方法

Python中你不知道的gzip高级用法分享

《Python中你不知道的gzip高级用法分享》在当今大数据时代,数据存储和传输成本已成为每个开发者必须考虑的问题,Python内置的gzip模块提供了一种简单高效的解决方案,下面小编就来和大家详细讲... 目录前言:为什么数据压缩如此重要1. gzip 模块基础介绍2. 基本压缩与解压缩操作2.1 压缩文