ZBLOG

网页设计制作里滑动的公告栏怎么写

要创建一个滑动的公告栏,可以使用HTML、CSS和JavaScript来实现。以下是一个简单的示例,展示了如何制作一个滑动的公告栏。

HTML部分

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>滑动公告栏</title>
    <link rel="stylesheet" href="styles.css">
</head>
<body>

<div class="marquee-container">
    <div class="marquee">欢迎来到我们的网站!这里有最新的消息和活动信息。</div>
</div>

<script src="script.js"></script>
</body>
</html>

CSS部分 (styles.css)

body {
    font-family: Arial, sans-serif;
}

.marquee-container {
    overflow: hidden; /* 隐藏溢出的内容 */
    white-space: nowrap; /* 防止换行 */
    background-color: #f2f2f2; /* 背景颜色 */
}

.marquee {
    display: inline-block; /* 使内容横向排列 */
    padding-left: 100%; /* 从右侧开始滚动 */
}

JavaScript部分 (script.js)

const marquee = document.querySelector('.marquee');

function startMarquee() {
    const containerWidth = document.querySelector('.marquee-container').offsetWidth;
    const marqueeWidth = marquee.offsetWidth;

    // 初始化位置
    let position = containerWidth;

    function animate() {
        position -= 1; // 每次移动1px

        if (position <= -marqueeWidth) {
            position = containerWidth; // 如果到达左边界,重置为右侧
        }

        marquee.style.transform = `translateX(${position}px)`; // 更新位置
        requestAnimationFrame(animate); // 循环调用动画函数
    }

    animate(); // 启动动画
}

startMarquee();

功能说明

  1. HTML结构:定义了一个包含滑动文本的容器。
  2. CSS样式:设置了公告栏的外观,包括背景颜色和文本不换行。
  3. JavaScript逻辑
    • 获取公告栏的宽度并初始化其位置。
    • 使用requestAnimationFrame来实现平滑动画效果,每次将位置减少一定量(例如1px)。
    • 当文本完全离开视口时,将其重置到初始位置以循环播放。

你可以根据需要调整公告栏内文本、样式或速度。希望这个示例能帮助你创建自己的滑动公告栏!


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:http://sdn.0voice.com/?id=6092

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?