Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk mencipta karusel dengan bantuan CSS?

Bagaimana untuk mencipta karusel dengan bantuan CSS?

WBOY
WBOYke hadapan
2023-08-23 12:33:05834semak imbas

Bagaimana untuk mencipta karusel dengan bantuan CSS?

Carousel sangat terkenal di internet. Karusel Web ialah cara yang elegan untuk menyusun kandungan yang serupa ke dalam satu tempat sentuhan sambil mengekalkan ruang tapak web yang berharga. Ia digunakan untuk memaparkan foto, menawarkan produk dan menarik minat pelawat baharu. Tetapi sejauh mana keberkesanannya? Terdapat banyak hujah terhadap karusel, serta penyelidikan untuk menggunakan karusel untuk meningkatkan prestasi. Tetapi bagaimanakah karusel mempengaruhi kebolehgunaan tapak web?

Dalam artikel ini, kita akan membincangkan asas karusel dan cara menciptanya menggunakan HTML dan CSS.

Apakah itu karusel?

Karusel ialah tayangan slaid yang memaparkan satu siri sepanduk/imej berputar. Karusel biasanya muncul di halaman utama tapak web. Ia menambah baik penampilan laman web anda. Karusel web, juga dikenali sebagai Gelangsar, Galeri dan Tayangan Slaid, membolehkan anda memaparkan teks, grafik, imej dan juga video dalam blok "Gelongsor" dinamik. Mereka adalah pilihan reka bentuk yang sangat baik untuk mengumpulkan kandungan dan konsep, mewujudkan pautan visual antara kandungan tertentu.

Karusel web oleh itu sesuai untuk mempromosikan produk yang berkaitan di tapak e-dagang, mempamerkan projek yang diketengahkan dalam portfolio reka bentuk, atau malah mengulung foto dalaman dan luaran rumah di tapak web hartanah. Walau bagaimanapun, mereka tidak selalunya pilihan terbaik.

Ramai pereka mengkritik mereka kerana memperlahankan masa pemuatan dan merosakkan aliran reka bentuk. Walau bagaimanapun, seperti mana-mana perkara yang berkaitan dengan reka bentuk, apabila dilakukan dengan betul, karusel web boleh memecahkan kandungan dengan cara yang memudahkan untuk dilalui.

Bagaimana untuk membuat karusel halaman web?

Di sini kita akan melihat cara membuat karusel web ringkas tanpa menggunakan rangka kerja seperti Bootstrap.

Langkah untuk diikuti

  • Gunakan HTML untuk mencipta struktur asas tanglung pusingan, yang mengandungi imej. Dalam contoh di bawah, kami telah menambah 4 imej pada pintu pusingan. Di samping itu, terdapat 4 butang, klik pada yang akan memaparkan imej yang sepadan.

  • Mula-mula, cipta elemen div sebagai bekas, yang mengandungi tajuk dan kandungan.

  • Kini, div kandungan mengandungi dua bahagian - kandungan karusel (mengandungi bahagian teks yang kekal tetap sepanjang peralihan) dan tayangan slaid (mengandungi bahagian yang bergerak, iaitu 4 imej dan butang).

  • Gunakan CSS untuk menggayakan imej dan butang karusel. Kekalkan kedudukan slaid sebagai kedudukan relatif.

  • Gunakan animasi CSS untuk mengalihkan imej dalam karusel anda dengan lancar.

Terjemahan bahasa Cina bagi

Contoh

ialah:

Contoh

Contoh berikut menunjukkan karusel yang mengandungi 4 imej dan butang yang mengawal paparan imej. Imej ini dipaparkan dalam peralihan pada selang masa yang tetap.

<!DOCTYPE html>
<html>
<head>
   <title> Web Carousel </title>
   <style>
      * {
         box-sizing: border-box;
         margin: 10px;
         padding: 3px;
      }
      body {
         background-color: rgb(195, 225, 235);
      }
      .box {
         width: 600px;
         height: 400px;
         display: flex;
         flex-direction: column;
         justify-content: center;
         align-items: center;
         margin: auto;
      }
      .title {
         padding: 10px 0 10px 0;
         position: absolute;
         top: 10px;
      }
      .content {
         position: relative;
         top: 10%;
      }
      .carousel-content {
         position: absolute;
         top: 50%;
         left: 45%;
         transform: translate(-40%, -40%);
         text-align: center;
         z-index: 50;
      }
      .carousel-title {
         font-size: 48px;
         color: black;
         margin-bottom: 1rem;
         font-family: Times New Roman;
      }
      .slideshow {
         position: relative;
         height: 100%;
         overflow: hidden;
      }
      .wrapper {
         display: flex;
         width: 400%;
         height: 100%;
         top: 10%;
         border-radius: 30%;
         position: relative;
         animation: motion 20s infinite;
      }
      .slide {
         width: 80%;
         height: 200%;
         border-radius: 30%;
      }
      .img {
         width: 100%;
         height: 100%;
         object-fit: cover;
      }
      @keyframes motion {
         0% {left: 0;}
         10% {left: 0;}
         15% {left: -100%;}
         25% {left: -100%;}
         30% {left: -200%;}
         40% {left: -200%;}
         45% {left: -300%;}
         55% {left: -300%;}
         60% {left: -200%;}
         70% {left: -200%;}
         75% {left: -100%;}
         85% {left: -100%;}
         90% {left: 0%;}
      }
      .button {
         position: absolute;
         bottom: 3%;
         left: 50%;
         width: 1.3rem;
         height: 1.3rem;
         background-color: red;
         border-radius: 50%;
         border: 0.2rem solid #d38800;
         outline: none;
         cursor: pointer;
         transform: translateX(-50%);
         z-index: 70;
      }
      .button-1 {
         left: 20%;
      }
      .button-2 {
         left: 25%;
      }
      .button-3 {
         left: 30%;
      }
      .button-4 {
         left: 35%;
      }
      .button-1:focus~.wrapper {
         animation: none;
         left: 0%;
      }
      .button-2:focus~.wrapper {
         animation: none;
         left: -100%;
      }
      .button-3:focus~.wrapper {
         animation: none;
         left: -200%;
      }
      .button-4:focus~.wrapper {
         animation: none;
         left: -300%;
      }
      .button:focus {
         background-color: black;
      }
   </style>
</head>
<body>
   <div class= "box">
      <h1 class= "title"> Responsive Carousel using CSS </h1>
      <div class= "content">
         <div class= "carousel-content">
         </div>
         <div class= "slideshow">
            <button class= "button button-1"> </button>
            <button class= "button button-2"> </button>
            <button class= "button button-3"> </button>
            <button class= "button button-4"> </button>
            <div class= "wrapper">
               <div class= "slide">
                  <img  class= "img" src= "https://www.tutorialspoint.com/static/images/simply-easy-learning.jpg" alt="Bagaimana untuk mencipta karusel dengan bantuan CSS?" >
               </div>
               <div class= "slide">
                  <img  class= "img" src="https://wallpapercave.com/wp/wp2782600.jpg" alt="Bagaimana untuk mencipta karusel dengan bantuan CSS?" >
               </div>
               <div class= "slide">
                  <img  class= "img" src="https://i.insider.com/5fd90e7ef773c90019ff1293?   style="max-width:90%" alt="Bagaimana untuk mencipta karusel dengan bantuan CSS?" >
               </div>
               <div class= "slide">
                  <img  class= "img" src="https://wallpaperaccess.com/full/1164582.jpg" alt="Bagaimana untuk mencipta karusel dengan bantuan CSS?" >
               </div>
            </div>
         </div>
      </div>
   </div>
</body>
</html>

Css Transform Property

Untuk mengubah suai ruang koordinat yang digunakan oleh model format visual, gunakan sifat transformasi dalam CSS. Dengan melakukan ini, anda boleh menggunakan kesan seperti kecondongan, putaran dan terjemahan pada elemen.

Tatabahasa

transform: none| transform-functions| initial| inherit;

Nilai

  • translate(x, y) − Fungsi ini mentakrifkan terjemahan sepanjang koordinat X dan Y.

  • translate3d(x, y, z) − Fungsi ini menyediakan terjemahan di sepanjang paksi koordinat X, Y dan Z.

  • initial − Tetapkan elemen kepada nilai lalainya.

  • warisi − Ia mewarisi nilai unsur induk.

Animasi CSS

Sifat animasi CSS membolehkan kami menukar pelbagai atribut gaya elemen dalam selang masa tertentu untuk menambahkan kesan animasi padanya.

Beberapa ciri animasi adalah seperti berikut:

  • Animation-name - Ia membolehkan kami menentukan nama animasi, yang kemudiannya digunakan oleh @keyframes untuk menentukan peraturan CSS untuk melaksanakan animasi.

  • Tempoh Animasi - Tetapkan tempoh animasi

  • Fungsi masa animasi - Mewakili lengkung kelajuan animasi, iaitu, selang masa yang digunakan oleh animasi untuk menukar daripada satu set sifat tersuai CSS kepada yang lain.

  • Animasi-kelewatan – Tetapkan kelewatan untuk nilai permulaan semasa selang masa tertentu

@keyframes digunakan untuk menentukan kod yang perlu dilaksanakan dalam animasi dalam tempoh masa tertentu. Ini dicapai dengan mengisytiharkan sifat CSS untuk "bingkai" tertentu semasa animasi, dengan peratusan antara 0% (permulaan animasi) hingga 100% (penghujung animasi).

Atas ialah kandungan terperinci Bagaimana untuk mencipta karusel dengan bantuan CSS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam