CSS-Zone

Vertical scroll

Smooth vertical scrolling text list. Practical example for marquee lines and continuous content rails with live preview, HTML structure, and production-ready CSS you can integrate quickly.

Preview

⭐ New Feature🚀 Fast🎨 Modern💡 Intuitive⭐ New Feature🚀 Fast

HTML + CSS

<div class="vertical-marquee">
  <div class="vertical-marquee__lane">
    <span>⭐ New Feature</span>
    <span>🚀 Fast</span>
    <span>🎨 Modern</span>
    <span>💡 Intuitive</span>
    <span>⭐ New Feature</span>
    <span>🚀 Fast</span>
  </div>
</div>

<style>
.vertical-marquee {
  position: relative;
  width: 180px;
  height: 200px;
  overflow: hidden;
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(15, 23, 42, 0.92), rgba(139, 92, 246, 0.12));
  border: 1px solid rgba(255, 255, 255, 0.24);
}

.vertical-marquee::before,
.vertical-marquee::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  height: 40px;
  pointer-events: none;
  z-index: 1;
}

.vertical-marquee::before {
  top: 0;
  background: linear-gradient(180deg, rgba(15, 23, 42, 0.92), transparent);
}

.vertical-marquee::after {
  bottom: 0;
  background: linear-gradient(0deg, rgba(15, 23, 42, 0.92), transparent);
}

.vertical-marquee__lane {
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding: 18px;
  animation: verticalScroll 10s linear infinite;
}

.vertical-marquee__lane span {
  white-space: nowrap;
  font-size: 14px;
  font-weight: 600;
  color: rgba(226, 232, 240, 0.9);
  padding: 8px;
  border-radius: 8px;
  background: rgba(15, 23, 42, 0.5);
  text-align: center;
}

@keyframes verticalScroll {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-50%);
  }
}
</style>

What the Vertical scroll pattern demonstrates

Vertical scroll is a reusable CSS animation pattern that can be integrated into modern UI without external dependencies. The example includes HTML structure and motion styles that are easy to scale for production components.

When this animation pattern is a good fit

Use this effect for state indication, visual focus, or lightweight micro-interactions that support content clarity. Motion should reinforce hierarchy, so keep speed, contrast, and density aligned with your interface goals.

How to implement it in production safely

Copy the snippet, adapt spacing and timing to your system tokens, and test behavior on mobile and low-power devices. Add reduced-motion support to keep the component accessible while preserving the same functional meaning.