marquee及纯CSS走马灯效果

本文介绍了如何利用HTML的marquee标签和CSS来创建滚动的走马灯效果,包括marquee的属性使用及常见事件,通过示例代码展示了具体的实现方式。
摘要由CSDN通过智能技术生成

marquee:创建滚动的字幕,可用于文字、图片、表格等。


属性:

属性名 属性作用
behavior 表现滚动的方式,默认值为scroll alternate:来回滚动; scroll:单方向循环滚动;slide:只滚动一次。
direction 滚动的方向,默认值left left / right / down /up
loop 决定滚动文字的滚动次数 当值为-1或者infinite时为无限循环
scrollamount 决定文字滚动的速度 滚动速度是设置每次滚动时移动的长度,以像素为单位,越大速度越快
scrolldelay 决定文字滚动的延时 设置滚动的时间间隔,以毫秒为单位
bgcolor 文字滚动范围的颜色
width/height 滚动文字在页面中的矩形范围大小
hspace 滚动矩形区域左右的空白距离
### 实现CSS走马灯效果 在 UniApp 中实现 CSS 走马灯效果可以通过 CSS 来完成,无需依赖额外的 JavaScript 或者 HTML 的 `marquee` 标签[^2]。下面提供一种基于 CSS 动画的方式。 #### 单行跑马灯 对于单行的文字滚动,可以定义一个容器并设置其子元素超出部分隐藏,再通过动画来移动内部文本的位置: ```css /* 定义样式 */ .marquee { width: 100%; overflow: hidden; white-space: nowrap; /* 防止文字换行 */ } .marquee span { display: inline-block; padding-left: 100%; /* 初始位置偏移量 */ animation: marquee 15s linear infinite; } @keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-100%); } } ``` ```html <!-- 使用方式 --> <view class="marquee"> <span>这是一条正在滚动的消息...</span> </view> ``` 这种做法适用于简单的水平方向上的文字流动显示[^1]。 #### 多行跑马灯 如果希望创建一个多行版本,则可以在上述基础上稍作修改,让每一行都独立运动: ```css .multi-marquee { height: 8em; /* 设置固定高度 */ position: relative; overflow: hidden; } .multi-marquee div { position: absolute; top: 0; left: 100%; width: 100%; height: 100%; text-align: center; line-height: 4em; /* 行高应等于父级的一半 */ animation-name: multiMarquee; animation-duration: 30s; animation-timing-function: linear; animation-iteration-count: infinite; } @keyframes multiMarquee { 0%, 17% {left: 100%; opacity: 0;} 25% {opacity: 1;left: 50%;} 33% {opacity: 1;left: 0%;} 50%, 100%{left: -100%; opacity: 0;} } ``` ```html <!-- 使用方式 --> <view class="multi-marquee"> <div>第一条消息。</div> <div>第二条更长一点的消息在这里展示。</div> <!-- 可继续添加更多项 --> </view> ``` 这种方式能够很好地处理多行内容,并且每一条信息都可以按照设定的时间间隔依次出现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值