CR8V STACKS — The Blog
Brand Strategy
Positioning your business for long-term recognition and trust.
BRAND
↳ Need this done for you?
BRAND STRATEGY
SERVICES
We build identities that make your business memorable, credible, and easy to trust at first glance.
Positioning & messaging
Visual identity systems
View the Service →
Business Tips
Practical, tested advice for running a growing business.
SHOP
↳ Selling online?
ECOMMERCE
WEBSITES
From Shopify builds to full custom stores — we design and develop ecommerce sites that convert.
Shopify & custom builds
Checkout & payments setup
View the Service →
Content Creation
Writing and formats that keep an audience coming back.
WRITE
↳ Need content, not just tips?
CONTENT WRITING
SERVICES
Blog posts, web copy, and long-form content written to rank and to actually convert readers.
SEO-driven blog writing
Website & landing page copy
View the Service →
Digital Marketing
Strategies to grow reach, traffic, and qualified leads.
GROW
↳ Ready to grow faster?
DIGITAL MARKETING
SERVICES
SEO, email, and social strategy handled end-to-end so your traffic turns into real customers.
SEO & SEM campaigns
Email & social management
View the Service →
Web Design & Development
Building fast, functional sites that look as good as they perform.
BUILD
↳ Time for a new site?
WEBSITE DESIGN
& DEV
WordPress, Shopify, or fully custom — we design and build sites that are built to convert.
WordPress & Shopify builds
Fully custom development
View the Service →
CR8V Stacks
↳ CR8V Stacks Blog
BROWSE BY
CATEGORY
Brand Strategy Business Marketing
9
Business Productivity Systems, tools, and workflows
6
Business Tips Ecommerce · Small Business
25
Career Planning Grow your professional life
5
Content Creation Blogging · Content Writing
17
Digital Marketing Email · SEM · SEO · Social
41
Web Design & Development WordPress · Shopify · Ecommerce
60
Tutorials Step-by-step guides and how-tos
22
↳ Like what you're reading?
LET'S BUILD
SOMETHING TOGETHER
Explore Our Services
How to Create Infinite Scrolling TextMarquee with Elementor (No Plugin)

How to Create Infinite Scrolling Text/Marquee In Elementor (No Plugin)

Creating an infinite scrolling text/marquee in Elementor free version involves more than just adding text or images. To achieve a smooth, modern scroll effect that works seamlessly across desktop, mobile, and tablet devices, we need to use custom CSS. This guide will walk you through creating a continuous scrolling marquee with responsive behavior and a unique hover effect, ensuring no breaks in the animation.

Let’s go step-by-step to build this marquee in Elementor without the need for external plugins.

Why Use a Marquee in Elementor?

Marquees are excellent for:

  • Displaying announcements or promotional content.
  • Rotating testimonials or client logos.
  • Adding interactive, dynamic elements to your web design.

In this tutorial, we’ll explore how to create a scrolling marquee that:

  • Works smoothly on desktop, mobile, and tablet devices.
  • Includes images and text in the scroll.
  • Has a custom hover animation for enhanced interaction.

Step 1: Design Structure for the Marquee

In Elementor, you’ll use a section and a container/inner section structure to place your text or images.

Here’s the design structure for the marquee:

  • Section (Full Width, no padding): This section will hold the marquee content. It needs to span the entire width of the page.
    • CSS Class: marquee-section
  • Container/Inner Section: Inside the section, add a container to hold the scrolling elements (text, images, etc.).
    • CSS Class: infinite-marquee
  • Widgets: Inside the container, you can place the text, images, or any other Elementor widgets you want to scroll.

Once the structure is set up in Elementor, we can move on to applying the CSS.

Step 2: CSS for the Infinite Marquee

Below is the updated CSS code for your infinite marquee, including the hover effect and adjustments for responsiveness across devices.

Main CSS:

/* Main marquee section */
.marquee-section {
  display: flex;
  overflow: hidden;
  height: 10vh;
  user-select: none;
  gap: 2rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
/*transform: skewY(-3deg); */
/*transform: rotate(-5deg) translateY(-30px) translateX(50px);*/
}

/* Inner marquee container */
.infinite-marquee {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  min-width: 100%;
  animation: scroll 15s linear infinite;
}

.infinite-marquee span {
  color: white;
  font-size: 5vw;
  font-weight: 800;
  white-space: nowrap;
  font-family: 'Syne', sans-serif !important;
  transition: transform 0.5s ease-in-out, color 0.5s ease-in-out; /* Make transition global */
}

/* Hover effect with smooth scaling and color change */
.marquee-section:hover .infinite-marquee span {
  -webkit-transform: scale(1.1); /* Scaling with vendor prefixes */
  -moz-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
  
  color: #e74c3c !important; /* Change to red */
  transition: transform 0.5s ease-in-out, color 0.5s ease-in-out; /* Smooth transition */
}

/* Scrolling animation */
@keyframes scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(calc(-100% - 2rem));
  }
}

/* Responsive font size adjustments */
@media only screen and (max-width: 1024px) {
  .infinite-marquee span {
    font-size: 6.5vw;  /* Larger for tablets */
  }
}

@media only screen and (max-width: 768px) {
  .infinite-marquee {
    animation-duration: 12s; /* Faster scroll speed on mobile */
  }

  .infinite-marquee span {
    font-size: 7.5vw;  /* Adjust font size for smaller mobile screens */
  }
}

@media only screen and (max-width: 480px) {
  .infinite-marquee {
    animation-duration: 10s;  /* Increase speed for very small screens */
  }

  .infinite-marquee span {
    font-size: 8.5vw;  /* Further adjust for smaller devices */
  }
}

Step 3: Explanation of Key CSS Features

1. Infinite Scrolling:

  • The .infinite-marquee class handles the continuous scroll. The @keyframes scroll animation moves the text or images from right to left without stopping.
  • For mobile devices, the speed is adjusted to ensure the content scrolls faster on smaller screens.

2. Responsive Design:

  • The font size changes for tablets and mobile devices to ensure readability.
  • On smaller screens, the marquee scrolls faster to avoid sluggish movement.

3. Hover Animation:

  • When hovered, the text grows larger (scale(1.1)) and changes to a red color (#e74c3c).
  • This animation adds an engaging effect without interrupting the continuous scrolling.

Step 4: Multiple Scroll Text Animations (Optional)

If you want to create multiple scroll text animations on different sections of your page, it’s easy to do so by assigning different CSS classes for each marquee.

Here’s how to handle multiple marquees:

  1. Assign unique classes to each new section and container.
    • For example:
      • Section 2: marquee-section-2
      • Container 2: infinite-marquee-2
  2. Update the CSS accordingly for each marquee instance:
/* Main marquee section 2*/
.marquee-section2 {
  display: flex;
  overflow: hidden;
  height: 10vh;
  user-select: none;
  gap: 2rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
/*transform: skewY(-3deg); */
/*transform: rotate(-5deg) translateY(-30px) translateX(50px);*/
}

/* Inner marquee container */
.infinite-marquee2 {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  min-width: 100%;
  animation: scroll 15s linear infinite;
}

.infinite-marquee2 span {
  color: white;
  font-size: 5vw;
  font-weight: 800;
  white-space: nowrap;
  font-family: 'Syne', sans-serif !important;
  transition: transform 0.5s ease-in-out, color 0.5s ease-in-out; /* Make transition global */
}

/* Hover effect with smooth scaling and color change */
.marquee-section2:hover .infinite-marquee2 span {
  -webkit-transform: scale(1.1); /* Scaling with vendor prefixes */
  -moz-transform: scale(1.1);
  -o-transform: scale(1.1);
  transform: scale(1.1);
  color: #e74c3c !important; /* Change to red */
  transition: transform 0.5s ease-in-out, color 0.5s ease-in-out; /* Smooth transition */
}

/* Scrolling animation */
@keyframes scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(calc(-100% - 2rem));
  }
}

/* Responsive font size adjustments */
@media only screen and (max-width: 1024px) {
  .infinite-marquee2 span {
    font-size: 6.5vw;  /* Larger for tablets */
  }
}

@media only screen and (max-width: 768px) {
  .infinite-marquee2 {
    animation-duration: 12s; /* Faster scroll speed on mobile */
  }

  .infinite-marquee2 span {
    font-size: 7.5vw;  /* Adjust font size for smaller mobile screens */
  }
}

@media only screen and (max-width: 480px) {
  .infinite-marquee2 {
    animation-duration: 10s;  /* Increase speed for very small screens */
  }

  .infinite-marquee2 span {
    font-size: 8.5vw;  /* Further adjust for smaller devices */
  }
}

Step 5: Reverse the Scrolling Direction (Optional)

To reverse the direction of the scroll, you can easily apply the following change in the animation property:

animation: scroll 15s linear infinite reverse;

This reverse option will make the marquee scroll from left to right instead of the default right-to-left direction.

Here’s an example of applying it:

.infinite-marquee {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  min-width: 100%;
  animation: scroll 15s linear infinite reverse;
}

Step 6: Left-to-Right Scroll Option (Optional)

If you’d prefer the marquee to scroll from left to right instead of the default direction, you can modify the scroll animation like this:

@keyframes scroll {
  from {
    transform: translateX(calc(-100% - 2rem));
  }
  to {
    transform: translateX(0);
  }
}

Conclusion: Building a Seamless Marquee with Elementor

With this guide, you can easily create an infinite scrolling marquee using Elementor’s free version. This setup is fully responsive, ensuring smooth scrolling across all devices, and includes a unique hover animation that enhances user interaction.

Add this CSS to your site, customize the content, and you’re ready to create an eye-catching scrolling marquee on your WordPress website.

Share This Post

Picture of Mallami Adekunle

Mallami Adekunle

Kunle Mallami is a digital entrepreneur with expertise in website design, digital marketing, brand strategy and digital content writing. When he's not doing any of these, he will probably be on YouTube learning.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

The reCAPTCHA verification period has expired. Please reload the page.

Get your Free eBook

Enter your details below and get instant access to the eBook — and we’ll email it to you too!

Sign Up

Get the latest update on small business marketing and general digital marketing contents.