Jadual Kandungan
1. Gunakan pendekatan CSS sahaja dengan unsur-unsur pseudo dan putaran sempadan
2. Buat bar kemajuan gaya cincin menggunakan sempadan dan laluan klip
3. Tambahkan animasi dan peralihan yang lancar
4. Sesuaikan penampilan
Rumah hujung hadapan web tutorial css Cara Membuat Bar Kemajuan Pekeliling dengan CSS

Cara Membuat Bar Kemajuan Pekeliling dengan CSS

Aug 23, 2025 am 07:38 AM

Buat bar kemajuan cincin menggunakan CSS boleh dicapai melalui gradien conic atau clip-path dan putaran. Yang pertama sesuai untuk kemajuan kemas kini statik atau JavaScript, sementara yang terakhir lebih sesuai untuk animasi yang lancar; Membina penampilan bulat melalui pembolehubah CSS dan unsur-unsur pseudo, mengawal kemajuan dengan transformasi: berputar (), dan tambah peralihan untuk mencapai kesan animasi, menyokong warna tersuai, ketebalan dan tag pusat, dan pilih kaedah yang sesuai berdasarkan keserasian pelayar dan keperluan animasi.

Cara Membuat Bar Kemajuan Pekeliling dengan CSS

Mewujudkan bar kemajuan bulat dengan CSS adalah cara yang bersih untuk mewakili kemajuan atau peratusan siap secara visual di laman web. Walaupun CSS tulen mempunyai batasan untuk kemas kini dinamik, anda boleh membina bar kemajuan pekeliling yang berfungsi dan animasi menggunakan gabungan CSS dan HTML yang minimum. Inilah caranya.

1. Gunakan pendekatan CSS sahaja dengan unsur-unsur pseudo dan putaran sempadan

Kaedah biasa menggunakan bekas dengan elemen pseudo yang berputar untuk mensimulasikan kemajuan kemajuan. Ini berfungsi dengan baik untuk bar statik atau separa dinamik (dikemas kini melalui kelas JavaScript).

Struktur HTML:

 <div class = "pekeliling-proses" style = "-Progress: 75;"> </div>

CSS:

 .circular-progress {
  lebar: 100px;
  Ketinggian: 100px;
  Radius sempadan: 50%;
  Latar Belakang: Conic-Gradient (
    #4CAF50 var (-Kemajuan),
    #e0e0e0 var (-kemajuan)
  );
  Kedudukan: Relatif;
}

.circular-progress :: sebelum {
  Kandungan: &#39;&#39;;
  Kedudukan: Mutlak;
  Atas: 50%;
  Kiri: 50%;
  Transform: Terjemahan (-50%, -50%);
  lebar: 80%;
  Ketinggian: 80%;
  Latar Belakang: Putih;
  Radius sempadan: 50%;
}

Ini mewujudkan bulatan yang dipenuhi dengan peratusan yang ditakrifkan oleh pembolehubah CSS --progress (misalnya, 75% ). conic-gradient menarik arka berwarna, dan ::before pseudo-element topeng pusat untuk menjadikannya kelihatan seperti cincin.

NOTA: conic-gradient disokong dengan baik dalam pelayar moden tetapi mungkin memerlukan penolakan untuk yang lebih tua.

2. Buat bar kemajuan gaya cincin menggunakan sempadan dan laluan klip

Jika anda mahukan strok pekeliling nipis (seperti pemutar pemuatan), gunakan elemen bersempadan di dalam bekas yang dipotong.

Html:

 <div class = "progress-ring">
  <div class = "progress-fill"> </div>
</div>

CSS:

 .progress-ring {
  lebar: 100px;
  Ketinggian: 100px;
  Radius sempadan: 50%;
  Latar Belakang: #e0e0e0;
  Kedudukan: Relatif;
}

.progres-fill {
  Kedudukan: Mutlak;
  Lebar: 100%;
  Ketinggian: 100%;
  Radius sempadan: 50%;
  klip: rect (0px, 100px, 100px, 50px);
  Latar Belakang: #4CAF50;
  Transform: Putar (135Deg); / * Bermula dari atas */
}

.progress-fill :: sebelum {
  Kandungan: &#39;&#39;;
  Kedudukan: Mutlak;
  Atas: 0;
  Kiri: 0;
  Lebar: 100%;
  Ketinggian: 100%;
  Radius sempadan: 50%;
  klip: rect (0px, 50px, 100px, 0px);
  Latar Belakang: #4CAF50;
  Transform: Putar (90Deg); / * Menyesuaikan berdasarkan kemajuan */
  Transform-asal: 50% 50%;
}

Untuk menghidupkan ini dengan peratusan tertentu (contohnya, 60%), anda akan mengira sudut putaran: 360 * (progress / 100) . Anda boleh mengemas kini ini melalui JavaScript dengan mengubah suai transform: rotate() nilai pada .progress-fill::before .

3. Tambahkan animasi dan peralihan yang lancar

Untuk menjadikan bar beredar dengan lancar apabila kemajuan berubah, gunakan peralihan CSS. Walau bagaimanapun, conic-gradient dan clip tidak secara langsung boleh dihidupkan, jadi anda boleh menghidupkan transform: rotate() pada elemen mengisi.

Contoh dengan animasi:

 .progress-fill :: sebelum {
  Peralihan: Transformasi 0.5s mudah;
}

Kemudian kemas kini putaran melalui JavaScript:

 const fill = document.QuerySelector (&#39;. Progress-fill :: sebelum&#39;);
// tidak mungkin secara langsung - sebaliknya, gunakan pembungkus atau kelas togol

Pendekatan yang lebih baik: Bungkus mengisi bekas dan putarnya:

 <div class = "progress-ring">
  <div class = "progress-mask">
    <div class = "progress-fill"> </div>
  </div>
</div>
 .progress-mask {
  Kedudukan: Mutlak;
  Lebar: 100%;
  Ketinggian: 100%;
  klip: rect (0, 100px, 100px, 50px);
  transform: putar (0deg); / * Dikawal oleh js */
}

.progres-fill {
  Lebar: 100%;
  Ketinggian: 100%;
  Radius sempadan: 50%;
  Latar Belakang: #4CAF50;
}

Sekarang gunakan JavaScript untuk menetapkan putaran:

 fungsi setProgress (peratus) {
  const rotatedeg = peratus * 3.6; // 360 /100
  Document.QuerySelector (&#39;. Progress-Mask&#39;). Gaya.Transform = 
    `berputar ($ {rotatedeg} deg)`;
}

4. Sesuaikan penampilan

  • Tukar ketebalan cincin dengan menyesuaikan potongan dalaman atau menggunakan sempadan.
  • Tambah label di pusat menggunakan elemen kanak -kanak.
  • Sokongan mereka dengan pembolehubah CSS:
     .circular-progress {
      -Progres: 50%;
      --fg-color: #4CAF50;
      --bg-color: #e0e0e0;
      Latar Belakang: Conic-Gradient (
        var (-fg-color) var (-kemajuan),
        var (-bg-color) var (-kemajuan)
      );
    }

    Pada asasnya, ia adalah campuran kecerunan pintar, keratan, dan putaran. Kaedah gradien conic adalah paling mudah untuk nilai statik atau js-updated. Untuk animasi yang lebih lancar, kaedah berputar klip-laluan memberikan lebih banyak kawalan. Pilih berdasarkan sokongan penyemak imbas dan keperluan animasi anda.

    Atas ialah kandungan terperinci Cara Membuat Bar Kemajuan Pekeliling dengan CSS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Stock Market GPT

Stock Market GPT

Penyelidikan pelaburan dikuasakan AI untuk keputusan yang lebih bijak

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Cara Membuat Menu Dropdown Dengan CSS Murni Cara Membuat Menu Dropdown Dengan CSS Murni Sep 20, 2025 am 02:19 AM

Gunakan HTML dan CSS untuk membuat menu drop-down tanpa JavaScript. 2. Memicu paparan submenu melalui: hover pseudo-class. 3. Gunakan senarai bersarang untuk membina struktur, dan tetapkan kesan paparan tersembunyi dan digantung dalam CSS. 4. Animasi peralihan boleh ditambah untuk meningkatkan pengalaman visual.

Cara Mencegah Imej Dari Regangan atau Mengecam Dengan CSS Cara Mencegah Imej Dari Regangan atau Mengecam Dengan CSS Sep 21, 2025 am 12:04 AM

UseObject-Fitormax-Widthwithheight: AutotopreventimagedIstion; Object-FitControlShowimagesfillConterswhilePreservingaseSpectratios, andmax-width: 100%; Height: AutoensureSressiveSsiveScalingWithoutStretching.

Cara Menggunakan Harta Penunjuk-Titik di CSS Cara Menggunakan Harta Penunjuk-Titik di CSS Sep 17, 2025 am 07:30 AM

ThePointer-EventsPropertyIncScontrolswhetheranelementCanBethetargetOfPointerevents.1.usepointer-Events: nonetodisableIntionsLikeClicksorhoversWheLeepingTheelementVisibleVisible.2.applyoverlaystoundlowlickeWough

Cara Menambah Kesan Bayangan Kotak Dengan CSS Cara Menambah Kesan Bayangan Kotak Dengan CSS Sep 20, 2025 am 12:23 AM

Usethebox-shadowpropertytoadddropshadows.Definehorizontalandverticaloffsets,blur,spread,color,andoptionalinsetforinnershadows.Multipleshadowsarecomma-separated.Example:box-shadow:5px10px8pxrgba(0,0,0,0.3);createsasoftblackshadow.

Cara memohon penapis pada gambar dengan css Cara memohon penapis pada gambar dengan css Sep 21, 2025 am 02:27 AM

Thecssfilterpropertyallowseasymagestylingwitheffectslebur, kecerahan, andgrayscale.usefilter: fungsi penapis (nilai) onimagesorbackgroundimages.commonfunctionsincludeblur (px), kecerahan (%)

Cara menambah latar belakang kecerunan dalam css Cara menambah latar belakang kecerunan dalam css Sep 16, 2025 am 05:30 AM

Untuk menambah latar belakang kecerunan CSS, gunakan latar belakang atau atribut imej latar belakang untuk bekerjasama dengan fungsi seperti linear-gradient (), radial-gradient (); Mula-mula pilih jenis kecerunan, tetapkan arah dan warna, dan anda boleh mengawalnya dengan halus melalui titik dok, bentuk, saiz dan parameter lain, seperti gradien linear (toright,#ff7e5f,#feb47b)

Bagaimana untuk membuat imej bulat dalam CSS? Bagaimana untuk membuat imej bulat dalam CSS? Sep 15, 2025 am 05:33 AM

Gunakan Radius Sempadan: 50% untuk menghidupkan imej lebar dan ketinggian yang sama ke dalam bulatan, menggabungkan objek-sesuai dan aspek nisbah untuk memastikan bentuk dan penanaman, dan menambah sempadan, bayang-bayang dan gaya lain untuk meningkatkan kesan visual.

Bagaimana untuk membuat jurang dalam susun atur grid CSS? Bagaimana untuk membuat jurang dalam susun atur grid CSS? Sep 22, 2025 am 05:15 AM

Gunakan jurang, jurang atau atribut jurang lajur untuk membuat jarak antara item grid dalam susun atur cssgrid. GAP adalah atribut singkatan untuk menetapkan jarak baris lajur, yang boleh menerima satu atau dua nilai panjang. Gap baris dan jurang lajur secara individu mengawal jarak antara baris dan lajur, dan unit sokongan seperti PX, REM, dan %.

See all articles