How to create modern galleries and sliders? These 36 carousel components cover all needs: responsive slider, infinite carousel, masonry grid, lightbox, marquee and galleries with thumbnails. Each carousel is touch-friendly, accessible and optimized for performance.

Basic Slider

Simple horizontal slider with navigation arrows.

CSS Transform Arrows

Fade Slider

Fade transition between slides.

CSS Opacity Fade

Auto-play Slider

Auto-scrolling with progress bar.

JS Timer Progress

Dots Navigation

Circular dot indicator navigation.

CSS Dots Click

Thumbnail Slider

Thumbnail navigation below the main slider.

JS Thumbnails Gallery

Vertical Slider

Defilement vertical haut/bas.

CSS Vertical Y-axis

Parallax Slider

Parallax effect on slide backgrounds.

CSS Parallax Depth

Infinite Loop

Infinite scrolling with no visible end.

JS Infinite Touch

Basic Lightbox

Click on an image to open it in a modal with fade effect.

JS Modal Fade

Lightbox with Navigation

Previous/next arrows and keyboard navigation.

JS Navigation Keyboard

Zoom Lightbox

The image enlarges from its thumbnail position.

JS Zoom Transform

Lightbox with Thumbnails

Thumbnail strip at the bottom of the lightbox.

JS Thumbnails Strip

Fullscreen Lightbox

True fullscreen mode, Escape to close.

JS Fullscreen Immersive

Lightbox with Caption

Animated caption that appears below the image.

JS Caption Animated
Hover Me

Hover Zoom

The image zooms in on hover within its container.

CSS Transform

Magnifying Glass

Circular magnifier that follows the cursor.

JS Background

Lens Zoom

Square magnifier that enlarges the area under the cursor.

JS Clip-path

Pan Zoom

Move mouse to explore the zoomed image.

JS Transform-origin

Click to Zoom

Click to alternate between normal and zoomed view.

JS Toggle

Zoom with Overlay

Zoomed view in a separate panel.

JS Overlay

Product Zoom

E-commerce style with thumbnails and hover.

JS E-commerce

Smooth Ken Burns

Slow zoom animation with continuous panning.

CSS Animation
Welcome to Effect.Labs Premium Web Effects Modern CSS Animations Infinite Scrolling
Welcome to Effect.Labs Premium Web Effects Modern CSS Animations Infinite Scrolling

Basic Marquee

Defilement horizontal simple et fluide.

CSS Minimal

Reverse Marquee

Text scrolling in the opposite direction.

CSS Reverse

Vertical Marquee

Vertical scrolling for announcements.

CSS Vertical

Image Marquee

Images defilantes horizontalement.

CSS Images

Speed Variation

Differentes vitesses de defilement.

CSS Speed

Hover Pause

Pauses on mouse hover.

CSS Interactive

Gradient Fade

Gradient fade on edges.

CSS Gradient

Alternating Rows

Rows alternating directions.

CSS Multi-row

Logo Ticker

Bandeau de logos de partenaires.

CSS Logos

Marquee with Icons

Text mixed with icons and symbols.

CSS Icons

WebGL Displacement Slideshow

Slideshow whose transitions are computed by a GPU displacement shader: visuals warp and blend into each other. CSS crossfade fallback if WebGL is unavailable.

💡 Perfect for: visual hero, premium product gallery, agency showreel, photo portfolio, immersive homepage.

WebGL Shader Slideshow Premium

Frequently Asked Questions

How to create an infinite carousel in CSS? +

Duplicate the item list. Apply animation: scroll Xs linear infinite. When the animation reaches the end of the first list, it seamlessly restarts because the second list is identical. Use overflow:hidden on the container.

How to make a responsive slider without a library? +

Use CSS scroll-snap: overflow-x:auto, scroll-snap-type:x mandatory on the container, scroll-snap-align:start on each slide. Arrow buttons use scrollBy() in JavaScript. Zero dependencies.

What is the best carousel for images? +

For full-screen images, use a slider with transform transition. For thumbnails, a carousel with scroll-snap + thumbnail navigation. For a portfolio, a masonry grid with lightbox on click.

How to optimize carousel performance? +

Load images with lazy loading (loading='lazy'). Pre-load only the next slide. Use images in the right format (WebP) and at the right size. For marquees, use will-change:transform.

How to make a carousel accessible? +

Add role='region' and aria-label on the container. Arrow buttons have aria-label='Previous'/'Next'. Each slide has role='group' and aria-roledescription='slide'. Support keyboard navigation with arrow keys.