怎么用HTML插入滚动文字效果_HTML marquee标签替代方案

絕刀狂花
发布: 2025-11-03 17:18:02
原创
379人浏览过
使用CSS动画替代marquee标签可实现横向、纵向滚动文字效果,通过@keyframes与transform属性控制平滑动画,配合JavaScript实现交互功能,提升兼容性与用户体验。

怎么用html插入滚动文字效果_html marquee标签替代方案

在早期的网页设计中,marquee 标签被广泛用于创建滚动文字效果。但这个标签早已被现代标准弃用,不推荐在HTML中使用。为了实现更兼容、更可控的滚动文字效果,我们可以使用 CSS 动画JavaScript 来替代。

使用 CSS 实现横向滚动文字

通过 CSS 的 @keyframestransform 属性,可以轻松创建平滑的滚动动画,且无需 JavaScript。

示例代码:

<style>
.scrolling-text {
  white-space: nowrap;
  overflow: hidden;
  width: 100%;
  box-sizing: border-box;
}

.scrolling-text span {
  display: inline-block;
  padding-left: 100%;
  animation: scrollLeft 10s linear infinite;
}

@keyframes scrollLeft {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
</style>

<div class="scrolling-text">
  <span>这里是滚动的文字内容,可以是新闻标题或公告信息。</span>
</div>
登录后复制

说明:文字从右向左滚动,padding-left: 100% 确保起始位置在容器外右侧,动画将其平移出左侧。

立即学习前端免费学习笔记(深入)”;

使用 JavaScript 控制滚动行为

如果需要更灵活的控制(如暂停、加速、方向切换),可以用 JavaScript 动态调整元素位置。

快标书AI
快标书AI

10分钟生成投标方案

快标书AI 241
查看详情 快标书AI

示例代码:

<div id="scrollText" style="overflow: hidden; width: 100%; white-space: nowrap;">
  <span>用 JavaScript 实现可交互的滚动文字效果。</span>
</div>

<script>
const element = document.getElementById('scrollText').querySelector('span');
let position = window.innerWidth;

function scrollText() {
  position--;
  if (position < -element.offsetWidth) {
    position = window.innerWidth;
  }
  element.style.transform = `translateX(${position}px)`;
  requestAnimationFrame(scrollText);
}

scrollText();
</script>
登录后复制

这种方式适合需要响应用户操作(如鼠标悬停暂停)的场景。

垂直滚动文字(跑马灯式公告)

对于上下滚动的公告栏,也可以用 CSS 动画实现。

<style>
.vertical-scroll {
  height: 60px;
  overflow: hidden;
  position: relative;
}

.vertical-scroll::after {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: linear-gradient(white 30%, transparent, white 70%);
  pointer-events: none;
}

.vertical-scroll span {
  display: block;
  animation: scrollUp 8s linear infinite;
}

@keyframes scrollUp {
  0% { transform: translateY(100%); }
  100% { transform: translateY(-100%); }
}
</style>

<div class="vertical-scroll">
  <span>第一条公告<br>第二条公告<br>第三条公告</span>
</div>
登录后复制

这种效果常用于网站顶部的消息通知栏。

基本上就这些。用 CSS 动画替代 marquee 标签,不仅更符合现代网页标准,还能提升性能和可维护性。根据实际需求选择横向或竖向滚动方案,结合:hover 暂停等交互优化用户体验。不复杂但容易忽略细节,比如文本长度与动画时间的匹配。

以上就是怎么用HTML插入滚动文字效果_HTML marquee标签替代方案的详细内容,更多请关注php中文网其它相关文章!

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号