Online visitors

People learning around the world

Online

—

Visitors exploring W3Schools

Online visitors by country Circles show approximate country locations. The country list provides the visitor counts.

Circles represent countries, not exact visitor locations.

Country

Online

Loading country activity…

    CSS Infinite Scrolling Text

    CSS Examples


    Infinite scrolling text is an excellent way to increase the visual appeal and display information on your website. It is a great way to highlight important announcements, promote products or services, or keep users engaged on your site for longer by adding interactivity to your design. This tutorial guides you on creating infinite scrolling text using only HTML and CSS.

    Infinite Scrolling Text Using CSS - Interactive Demo

    Step 1: Create the HTML

    The first step is to create the HTML for your infinite scrolling text. Here's an example:

    <div class="scrolling-text-container">
        <div class="scrolling-text-inner" style="--marquee-speed: 20s; --direction:scroll-left" role="marquee">
            <div class="scrolling-text">
                <div class="scrolling-text-item">Your First Announcement</div>
                <div class="scrolling-text-item">Your Second Announcement</div>
                <!-- Add More Items Here -->
            </div>
        </div>
    </div>

    Step 2: Add CSS for Styling and Animation

    Use the following CSS code either within a <style> tag in your HTML file or in a separate CSS file:

    /* Container styles */
    .scrolling-text-container {
        background-color: #eff5ff;
        border-radius: 4px;
        overflow: hidden;
    }
    
    /* Inner container styles */
    .scrolling-text-inner {
        display: flex;
        white-space: nowrap;
        font-size: 16px;
        font-weight: 600;
        padding: 8px 0;
    }
    
    /* Text styles */
    .scrolling-text {
        display: flex;
    }
    
    .scrolling-text-item {
        padding: 0 30px;
    }
    
    /* Apply the animation to the text items */
    .scrolling-text-inner>div {
        animation: var(--direction) var(--marquee-speed) linear infinite;
    }
    
    /* Pause the animation when a user hovers over it */
    .scrolling-text-container:hover .scrolling-text-inner>div {
        animation-play-state: paused;
    }
    
    /* Setting the Animation using Keyframes */
    @keyframes scroll-left {
        0% {
            transform: translateX(0%);
        }
    
        100% {
            transform: translateX(-100%);
        }
    }
    
    @keyframes scroll-right {
        0% {
            transform: translateX(-100%);
        }
    
        100% {
            transform: translateX(0%);
        }
    }

    Step 3: Save and Test

    Save the HTML and CSS file, then open it in a web browser to see scrolling text. Text scrolls to the left by default and stops on hover.

    Step 4: Customizing the Scroll

    To customize the scrolling direction or speed, adjust the --marquee-speed and --direction inline styles in the HTML markup:

    • For speed: Change --marquee-speed: 20s to your desired time.
    • For direction: Change --direction:scroll-left to scroll-right to scroll to the right.

    Step 5: Advanced Customization (Optional)

    To pause the scrolling when users hover over the text, the CSS uses the animation-play-state: paused; rule. If you wish to turn off this feature, simply remove the .scrolling-text-container:hover .scrolling-text-inner > div block from your CSS.

    Conclusion

    Creating infinite scrolling text using only HTML and CSS is simple and effective. Following the steps in this tutorial, you can easily create scrolling text in minutes.



    Found This Page Useful? Share It!
    Get the Latest Tutorials and Updates
    Join us on Telegram

    Notifications

    Updates are enabled for this browser.

    Receive new tutorials, articles and learning resources. You can turn updates off anytime.