文字溢出隐藏及鼠标悬停显示效果

简介: 文字溢出隐藏及鼠标悬停显示效果

在本文中,我们将学习如何使用 CSS 和 JavaScript 实现一个简单的文字溢出隐藏效果,当鼠标悬停在文本上时显示完整内容。

创建 HTML 页面结构

首先,我们需要创建一个包含文本内容的 HTML 页面。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
 <title>Text Overflow Hover Effect</title>
    <link rel="stylesheet" href="styles.css">
</head>
<body>
    <h1 class="text-overflow">This is a long text that will overflow and hide when it exceeds the container width.</h1>
 
 <script src="scripts.js"></script>
</body>
</html>

添加 CSS 样式

接下来,我们为页面添加一些基本的样式以及实现文字溢出隐藏的效果。创建一个名为 styles.css 的文件,并添加以下内容:

body {
    font-family: Arial, sans-serif;
    text-align: center;
}
 
.text-overflow {
    width: 300px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

在这里,我们设置了一个固定宽度的容器(width: 300px),并使用 white-space: nowrapoverflow: hiddentext-overflow: ellipsis 实现文字溢出隐藏效果。

编写 JavaScript 代码

现在我们已经准备好编写 JavaScript 代码来实现鼠标悬停时显示完整文本的效果。首先创建一个名为 scripts.js 的文件,然后添加以下代码:

document.querySelector('.text-overflow').addEventListener('mouseover', function () {
    this.style.whiteSpace = 'normal';
});
 
document.querySelector('.text-overflow').addEventListener('mouseout', function () {
    this.style.whiteSpace = 'nowrap';
});


在这里,我们为 .text-overflow 元素添加了两个事件监听器:当鼠标悬停在文本上时,设置 white-spacenormal 以显示完整内容;当鼠标离开时,设置 white-spacenowrap 以恢复溢出隐藏效果。

目录
相关文章
|
前端开发
CSS文字溢出显示省略号,且出现title或者tooltip
CSS文字溢出显示省略号,且出现title或者tooltip
12478 0
CSS文字溢出显示省略号,且出现title或者tooltip
Element UI之el-tabs的样式修改字体颜色、下划线、选中/未选中
Element UI之el-tabs的样式修改字体颜色、下划线、选中/未选中
4135 0
Vue3】vite打包报错:块的大小超过限制,Some chunks are larger than 500kb after minification
Vue3】vite打包报错:块的大小超过限制,Some chunks are larger than 500kb after minification
3414 0
|
10月前
|
人工智能 前端开发 Java
2025年WebStorm高效Java开发全指南:从配置到实战
WebStorm 2025不仅是一款强大的JavaScript IDE,也全面支持Java开发。本文详解其AI辅助编程、Java特性增强及性能优化,并提供环境配置、高效开发技巧与实战案例,助你打造流畅的全栈开发体验。
774 4
|
7月前
|
JavaScript 安全
vue3使用ts传参教程
Vue 3结合TypeScript实现组件传参,提升类型安全与开发效率。涵盖Props、Emits、v-model双向绑定及useAttrs透传属性,建议明确声明类型,保障代码质量。
592 0
|
前端开发 JavaScript 容器
文字溢出隐藏及鼠标悬停显示效果
文字溢出隐藏及鼠标悬停显示效果
668 0
|
12月前
|
存储 人工智能 移动开发
uni-app+vue3接入deepseek-v3搭建跨端ai流式(小程序+app+h5)
基于Uniapp+Vue3+Markdown接入DeepSeek-V3聊天大模型,支持编译到H5+小程序+App端。实现流式输出、支持亮色/暗黑主题、代码高亮、会话本地存储等功能。
2113 14
|
应用服务中间件 API nginx
nginx配置反向代理404问题
【10月更文挑战第18天】本文介绍了使用Nginx进行反向代理的配置方法,解决了404错误、跨域问题和302重定向问题。关键配置包括代理路径、请求头设置、跨域头添加以及端口转发设置。通过调整`proxy_set_header`和添加必要的HTTP头,实现了稳定的服务代理和跨域访问。
7338 1
nginx配置反向代理404问题
|
存储 编解码 应用服务中间件
使用Nginx搭建流媒体服务器
本文介绍了流媒体服务器的特性及各种流媒体传输协议的适用场景,并详细阐述了使用 nginx-http-flv-module 扩展Nginx作为流媒体服务器的详细步骤,并提供了在VLC,flv.js,hls.js下的流媒体拉流播放示例。
2248 3
|
JavaScript API 索引
js中的reduce()方法 讲解 和实现
`reduce()` 方法对数组元素依次应用一个回调函数,将结果累计并最终返回单一值。语法为 `reduce(callback(accumulator, currentValue, currentIndex, array), initialValue)`。参数包括累计器(初次为初始值或首元素)、当前元素值、索引及数组自身。此方法需返回值供下一轮迭代使用。常见应用场景包括计算数组总和与平均值、统计元素频率、过滤与转换数组内容及去除重复项等。例如,可通过 `reduce()` 快速计算 `[1, 2, 3, 4, 5]` 的总和或对对象属性值求和。此外,还可自定义实现 `reduce()` 方法
7422 1