How To Make A Auto Rotating 3D Carousel

Wide transparent graphic asset of a torn paper edge rendered in white, appearing blank against a white background
Thumbnail with a man in a dark jacket on the left over a purple glow with the partly hidden heading Management: Where Talent Meets Opportunity behind him, and a large slanted orange side menu panel listing Home, About Us, Services, Our Work, Careers and Contact Us with Facebook, YouTube, Instagram and LinkedIn links, a yellow CLOSE button at the top right, a magenta circle with a white list icon at the lower left, and model portrait cards visible behind the panel

The Creative Overlay Menu in Elementor — A Full-Screen Menu That Shows Off

Reboot Addons' Creative Overlay Menu: a full-screen Elementor menu with kicker, headline, CTA and eleven animated surface options. No custom ...

Read More
A web-design studio desk with a laptop and monitors showing website layouts and design tools — the kind of monthly managed-build behind the R749 to R1999 plans.

R749 vs R999 vs R1999 — What Each Website Package Actually Gets You

R749, R999, R1499 or R1999 a month — what each Reboot Websites package actually builds, and why the gap between ...

Read More
Tall parallax website demo screenshot for Apple Watch Ultra showing a hero with the heading Apple Watch Ultra: Your Companion for Every Adventure over a close up of the watch face on a wrist, a dark section with the heading A REVOLUTIONARY BLEND OF CUTTING-EDGE TECHNOLOGY AND RUGGED DURABILITY FOR THE MODERN EXPLORER beside a floating watch band image, a section of layered watch photos with translucent highlight text, and a flat lay of the watch with an orange band beside a succulent and a Bullet planner notebook, all inside the WordPress admin bar

Advanced Text FX in Elementor — 58 Text Effects in One Widget

Advanced Text FX gives you 58 text-in effects in one Elementor widget — scramble, typewriter, glitch, neon, and a whole ...

Read More
Thumbnail with a man in a dark shirt on the right, a fan of eight portrait cards of women behind him, large distressed red and orange CARD EFFECT lettering across the bottom, a magenta circle with a white list icon at the lower right, and a blurred purple radial background

Elementor Card Widgets without Custom JS — The Free Tier

Seven content widgets plus all six form stylers that build card effects, carousels, and styled forms without writing JS. Widget ...

Read More
Showing Slide 1 of 5
Thumbnail with a man in a grey t-shirt on the right holding his palm up beneath a fanned 3D stack of photo cards, the front card showing orange slices and limes in water, another card showing white sneakers and one showing a white kitchen sink with gold taps, on a blurred red and white background

So if you follow along in the video, I refer to this blog post for you to enter code at certain points, so below is everything you will need!

The Following are the css class names I used in the tutorial:

				
					Reboot-Auto-Gallery-Parent 

Reboot-Auto-Gallery


				
			

The Following code goes into the Gallery Container css:

				
					.Reboot-Auto-Gallery-Parent  {
    position: relative; /* Ensures proper positioning context */
    display: flex;
}
				
			

The Following code goes into the Gallery Container css:

				
					.Reboot-Auto-Gallery{
   transform-style: preserve-3d;
   
}
selector .elementor-widget-image{
 position: absolute;
   transform-origin: center;
   transform-style: preserve-3d;
   -webkit-box-reflect: below 0px linear-gradient(to bottom ,transparent 65%, rgba(0, 0, 0, 0.4));

}
selector .Reboot-Auto-Gallery img{
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   object-fit: cover;
}

/*ANIMATION*/
.Reboot-Auto-Gallery{
    /*Duration Control*/
    animation: AutoGalleryReboot 20s linear infinite;
}
@keyframes AutoGalleryReboot{
    0%
    {
        transform: perspective(1000px) rotateY(0deg);
    }
    100%
    {
        transform: perspective(1000px) rotateY(360deg);
    }
}


/*MOBILE*/
@media (max-width:767px){
.Reboot-Auto-Gallery-Parent {
    /*Scale Control*/
    transform: scale(0.65)!important;
}
}


				
			

The Following code goes into the HTML widget css:

				
					<script>
var rebootJ = jQuery
rebootJ(document).ready(function(){
 var AutoGal = 'Reboot-Auto-Gallery' 
 rebootJ('.' + AutoGal).each(function(){
   var rebootautogalcells = rebootJ(this).find('.elementor-widget-image'),
       rebootautocellsCount = rebootautogalcells.length
   rebootautogalcells.each(function(rebootCurrentCellAuto){
       rebootJ(this).css('transform', 'rotateY(' + rebootCurrentCellAuto*360/rebootautocellsCount + 'deg) translateZ(calc(' + ((rebootautocellsCount +1) * 31 + rebootautocellsCount*1) + 'px))')
   })
 })
})
</script>