前端小案例——滚动文本区域(HTML+CSS, 附源码)

一、前言

实现功能:

        这个案例实现了一个具有滚动功能的文本区域,用于显示长文本内容,并且可以通过滚动条来查看完整的文本内容。

实现逻辑:

  1. 内容布局:在<body>中,使用<div>容器创建了一个类名为listen_text的区域,作为页面的主要内容容器。其中包含两个段落<p>用于展示标题和作者信息,以及一个listen_text_box<div>用于封装实际的滚动文本区域listen_text_con

  2. 滚动文本区域listen_text_con类的<div>是用来展示诗歌内容的地方。通过设置overflow-y: auto;实现垂直滚动功能,当内容超出预设高度(300px)时,将显示滚动条。此外,文本对齐方式设为两端对齐,增强了文本的可读性。

  3. 自定义滚动条:通过::-webkit-scrollbar::-webkit-scrollbar-thumb::-webkit-scrollbar-track伪元素,分别自定义了滚动条的整体样式、滑块(thumb)样式和轨道(track)样式。这些样式提升了滚动条的视觉效果,使其与页面整体设计更加协调。

二、项目运行效果

三、全部代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>滚动文本区域</title>
    <style>
        *{
            margin: 0;
            padding: 0;
            text-decoration: none;
            list-style: none;
            background-repeat: no-repeat;
        }
        .listen_text{
            width: 340px;
            margin: 20px auto;
        }
        .listen_text_box{
            width: 260px; 
        }
        .listen_text_con{
            overflow-y: auto; 
            height: 300px; 
            text-align: justify;
            font-size: 14px; 
            line-height: 24px; 
            color: #a0a0a0;
        }
        .listen_text_con::-webkit-scrollbar {
            width: 5px;
        }
        .listen_text_con::-webkit-scrollbar-thumb {
            background-color: #55917a; 
            border-radius: 5px; 
        }
        .listen_text_con::-webkit-scrollbar-track {
            background-color: #cec5c5;
            border-radius: 5px;
        }
    </style>
</head>
<body>
    <div class="listen_text">
        <p style="margin-bottom: 20px;font-size: 22px;line-height: 22px;color: #484848;">守灯塔人的独白</p>
        <p style="margin-bottom: 34px;font-size: 12px;line-height: 20px;color: #838383;">
            作者:路易斯·塞尔努达<br>
            为你读诗:肖战、路知行 <br>
            译者:汪天艾 <br>
        </p>
        <div class="listen_text_box">
            <div class="listen_text_con">
                风暴又一次咆哮;半掩<br>
                在这摇篮的篷罩和被巾下面,<br>
                我的孩子依然安睡。除去<br>
                格雷戈里的森林和一座秃丘<br>
                再没有任何屏障足以阻挡<br>
                那起自大西洋上的掀屋大风;<br>
                我踱步祈祷已一个时辰,<br>
                因为那巨大阴影笼罩在我心上。<br>
                为这幼女我踱步祈祷了一个时辰,<br>
                耳听着海风呼啸在高塔顶,<br>
                在拱桥下,在泛滥的溪水上,<br>
                在溪上的榆树林中回荡;<br>
                在快乐的迷狂中幻梦<br>
                未来的岁月已经来到:<br>
                踏着狂乱的鼓点舞蹈,<br>
                来自大海残酷的天真。<br>
                愿她被人承认美丽,<br>
                但不至使陌生人的眼光痴迷,<br>
                或使自己在镜前心醉,因为<br>
                一旦生得过分地艳丽,<br>
                便会把美看作是最终的满足,<br>
                从而丧失天性的善良,还可能<br>
                失去推心置腹的莫逆交情,<br>
                永远也找不到一个朋友。<br>
                海伦命定要感到生活平淡,<br>
                后来因一个蠢汉惹来许多麻烦,<br>
                而那从浪花中升起的伟大女王,<br>
                因没有生父而可以自做主张,<br>
                却选中了一个瘸腿铁匠做男人。<br>
                无疑娇贵的女人们喜欢<br>
                吃肉时佐以古怪的生菜冷盘,<br>
                丰饶角因此而被糟蹋罄尽。<br>
                我要让她首先精通礼节;<br>
                心灵不可视为天赐,而是那些<br>
                并不十分美丽的人所挣得;<br>
                而许多曾为美而美的蠢货<br>
                已经将魅力变成了智慧,<br>
                还有不少曾经漫游的穷汉,<br>
                爱恋过并自认为曾被爱恋,<br>
                现在目光已离不开令人欢悦的仁爱。<br><br>
                愿她成为一株繁茂的绿树,<br>
                红雀就好象她全部的思绪,<br>
                没有劳形的事务,只是慷慨地<br>
                四处播送着它们宏亮的鸣啼,<br>
                只是在欢乐中相互嬉逐,<br>
                只是在欢乐中你吵我争。<br>
                呵,但愿她象月桂那样长青<br>
                植根在一个可爱的永恒之处。<br>
                近来,由于我曾喜爱的那些心意<br>
                和我曾赞赏的那种美丽<br>
                皆是昙花一现,我的心灵已枯竭,<br>
                但仍知一旦为仇恨所壅塞<br>
                才定然是最可怕的厄运。<br>
                假如心灵中毫无仇恨,<br>
                那厉风的袭击再烈再猛<br>
                理智的仇恨为害最甚,<br>
                因此教她把观念视为可憎。<br>
                难道我不曾眼见那诞生<br>
                自丰饶角之口的最美丽的女人,<br>
                只因她观念固执的心肠,<br>
                用温和的天性所了解的<br>
                每一种美德和那只羊角<br>
                换取了一只充满愤怒的旧风箱?<br>
                想到此,一切仇恨被驱逐散尽,<br>
                灵魂恢复了根本的天真,<br>
                终于得知那是自娱自乐,<br>
                自慰自安,自惊自吓,<br>
                它自己的美好愿望就是天意;<br>
                尽管每一张面孔都会恼怒,<br>
                每一处风源都会咆哮,或每一组<br>
                风箱都会胀破,但她会依然欢喜。<br>
                还愿她的新郎引她入洞房,<br>
                那里一切寻常,庄重堂皇;<br>
                因为傲慢和仇恨都不过<br>
                是大路两旁零售的杂货。<br>
                除了在风俗和礼仪之中,<br>
                纯真和美丽如何诞生?<br>
                礼仪是丰饶角的别名,<br>
                风俗是繁盛的桂树的名称。
            </div>
        </div>
    </div>
</body>
</html>

四、答疑解惑

        这是一个非常适合前端入门练习的小案例,各位小伙伴可以自行更改样式和内容,如果大家运行时出现问题或代码有什么不懂的地方都可以随时评论留言或联系博主QQ。

        还多请各位小伙伴多多点赞支持,你们的支持是我最大的动力。

博主QQ:1196094293

谢谢各位的支持~~

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

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

相关文章

vue3 之 组合式API—watch函数

watch函数 作用&#xff1a;侦听一个或者多个数据的变化&#xff0c;数据变化时执行回调函数 两个额外参数&#xff1a; 1.immediate&#xff08;立即执行&#xff09;2.deep&#xff08;深度侦听&#xff09; 场景&#xff1a;比如选择不同的内容请求后端不同数据时 如下图 …

【算法与数据结构】300、674、LeetCode最长递增子序列 最长连续递增序列

文章目录 一、300、最长递增子序列二、674、最长连续递增序列三、完整代码 所有的LeetCode题解索引&#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、300、最长递增子序列 思路分析&#xff1a; 第一步&#xff0c;动态数组的含义。 d p [ i ] dp[i] dp[i…

IDEA 配置以及一些技巧

1. IDEA设置 1.1 设置主题 1.2 设置字体和字体大小 1.3 编辑区的字体用ctrl鼠标滚轮可以控制大小 1.4 自动导包和优化多余的包 1.5 设置编码方式 1.6 配置 maven 1.7 设置方法形参参数提示 1.8 设置控制台的字体和大小 注意&#xff1a;设置控制台字体和大小后需要重启IDEA才会…

异步解耦之RabbitMQ(二)_RabbitMQ架构及交换机

异步解耦之RabbitMQ(一)-CSDN博客 RabbitMQ架构 RabbitMQ是一个基于AMQP&#xff08;Advanced Message Queuing Protocol&#xff09;协议的消息代理中间件&#xff0c;它通过交换机和队列实现消息的路由和分发。以下是RabbitMQ的架构图&#xff1a; Producer&#xff08;生产…

LabVIEW风力发电机在线监测

LabVIEW风力发电机在线监测 随着可再生能源的发展&#xff0c;风力发电成为越来越重要的能源形式。设计了一个基于控制器局域网&#xff08;CAN&#xff09;总线和LabVIEW的风力发电机在线监测系统&#xff0c;实现风力发电机的实时监控和故障诊断&#xff0c;以提高风力发电的…

ArrayList在添加元素时报错java.lang.ArrayIndexOutOfBoundException

一、添加单个元素数组越界分析 add源码如下 public boolean add(E e) {ensureCapacityInternal(size 1); // Increments modCount!!elementData[size] e;return true; } size字段的定义 The size of the ArrayList (the number of elements it contains). ArrayList的大…

【面试官问】Redis 持久化

目录 【面试官问】Redis 持久化 Redis 持久化的方式RDB(Redis DataBase)AOF(Append Only File)混合持久化:RDB + AOF 混合方式的持久化持久化最佳方式控制持久化开关主从部署使用混合持久化使用配置更高的机器参考文章所属专区

【Django】Cookie和Session的使用

Cookies和Session 1. 会话 从打开浏览器访问一个网站&#xff0c;到关闭浏览器结束此次访问&#xff0c;称之为一次会话。 HTTP协议是无状态的&#xff0c;导致会话状态难以保持。 Cookies和Session就是为了保持会话状态而诞生的两个存储技术。 2. Cookies 2.1 Cookies定…

机器学习系列——(六)数据降维

引言 在机器学习领域&#xff0c;数据降维是一种常用的技术&#xff0c;旨在减少数据集的维度&#xff0c;同时保留尽可能多的有用信息。数据降维可以帮助我们解决高维数据带来的问题&#xff0c;提高模型的效率和准确性。本文将详细介绍机器学习中的数据降维方法和技术&#…

【Linux取经路】进程控制——程序替换

文章目录 一、单进程版程序替换看现象二、程序替换的基本原理三、程序替换接口学习3.1 替换自己写的可执行程序3.2 第三个参数 envp 验证四、结语一、单进程版程序替换看现象 #include <stdio.h> #

Vue学习笔记之组件基础

1、组件的定义 一般将 Vue 组件定义在一个单独的 .vue 文件中&#xff0c;称做单文件组件&#xff1b;当然也可以将组件直接定义在js文件中&#xff0c;如下js代码&#xff0c;定义一个组件BlogPost&#xff0c;通过props定义对外暴露属性title&#xff0c;父组件传递title&am…

List的模拟实现 迭代器

———————————————————— list与vector相比&#xff0c;插入、删除等操作实现的成本非常低&#xff0c;如果在C语言阶段熟悉理解过链表&#xff0c;那么现在实现起来list就显得比较简单&#xff0c;可以说操作层面上比vector更简洁&#xff0c;因为list没有扩…

C++ 动态规划 线性DP 最长上升子序列

给定一个长度为 N 的数列&#xff0c;求数值严格单调递增的子序列的长度最长是多少。 输入格式 第一行包含整数 N 。 第二行包含 N 个整数&#xff0c;表示完整序列。 输出格式 输出一个整数&#xff0c;表示最大长度。 数据范围 1≤N≤1000 &#xff0c; −109≤数列中的数…

istio 限流

#详细参数看官网&#xff0c;我参数就不解释https://istio.io/latest/docs/reference/config/networking/destination-rule/cat << EOF > dr.yaml apiVersion: networking.istio.io/v1alpha3 kind: DestinationRule metadata:name: my-testnamespace: demon spec:hos…

瑞_23种设计模式_抽象工厂模式

文章目录 1 抽象工厂模式&#xff08;Abstract Factory Pattern&#xff09;1.1 概念1.2 介绍1.3 小结1.4 结构 2 案例一2.1 需求2.2 代码实现 3 案例二3.1 需求3.2 代码实现 4 总结4.1 抽象工厂模式优缺点4.2 抽象工厂模式使用场景4.3 抽象工厂模式 VS 工厂方法模式4.4 抽象工…

记一次生产系统每隔10小时(36000000毫秒)固定进行一次Full GC排查思路

一、 背景描述 某个应用在生产环境通过系统监控发现&#xff0c;应用每隔10小时就会触发一次Full GC&#xff0c;该系统当时承接的业务量并不大&#xff0c;而且固定10小时就会进行Full GC&#xff0c;通过监控时间轴发现Full GC频率很规律&#xff0c;直觉告诉我这不是JVM自身…

回归预测 | Matlab实现RIME-CNN-LSTM-Attention霜冰优化卷积长短期记忆网络注意力多变量回归预测(SE注意力机制)

回归预测 | Matlab实现RIME-CNN-LSTM-Attention霜冰优化卷积长短期记忆网络注意力多变量回归预测&#xff08;SE注意力机制&#xff09; 目录 回归预测 | Matlab实现RIME-CNN-LSTM-Attention霜冰优化卷积长短期记忆网络注意力多变量回归预测&#xff08;SE注意力机制&#xff0…

计算机网络-差错控制(奇偶校验码 CRC循环冗余码)

文章目录 差错从何而来从传感器层面提高信道比来减少线路本身的随机噪声的一个例子热噪声和冲击噪声 数据链路层的差错控制检错编码-奇偶校验码检错编码-CRC循环冗余码例子注意 差错从何而来 噪声通常指的是任何未预期的、随机的信号干扰&#xff0c;这些干扰可能源自多种物理…

Python脚本自动去除文档中无用的信息

1.在进行嵌入式开发过程中会遇到此类情况&#xff1a; 想去掉文档中的“//0x20”的信息&#xff0c;手动消除的话会很麻烦&#xff0c;这时用python脚本就很方便。 2.源码&#xff1a; #!/usr/bin/python3# 打开一个文件 f open("test.txt", "r")text …

LabVIEW智能温度直流模件自动测试系统

LabVIEW智能温度直流模件自动测试系统 自动化测试系统在提高测试效率和准确性方面发挥着越来越重要的作用。介绍了一种基于LabVIEW的智能温度直流模件&#xff08;TDCA&#xff09;自动测试系统的设计与实施&#xff0c;旨在提高测控装置的产品质量。 系统的硬件平台主要由PS…