Langkau ke kandungan utama

Penjana Bayang Kotak CSS percuma

Pembina visual untuk box-shadow CSS dengan pratonton langsung, penindanan berbilang lapisan, pemilih warna, togol inset, dan salin satu klik. Termasuk pratetap Material, neumorfisme, dan cahaya.

Berfungsi luar talian selepas dimuatkan
Pratinjau latar belakang

Seret kotak untuk memposisikan bayangan lapisan aktif - tahan Shift untuk kontrol halus

box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.15);

Pratetapan

Kegunaan biasa

  • Bayangan Kad UIBina bayangan kad yang elegan untuk papan pemuka, grid produk dan papan pemuka.
  • Kesan Tekan ButangBina bayangan butang yang meniru kedalaman dunia nyata dan keadaan tekan.
  • Neumorphism UI LembutBuat rupa UI lembut neumorphism dengan bayangan berpasangan cahaya + gelap.
  • Bayangan Modal & PopoverBina rasa yang ditinggikan dan melayang untuk dialog dan dropdown.
  • Kesan bercahaya dan cincin tumpuanBuat kesan tekanan bercahaya, cincin tumpuan dan penyerlahan gaya neon.

Cara ia berfungsi

Penjana box-shadow ialah alat React sepenuhnya-sisi-klien β€” tiada pelayan, tiada pustaka. Ia mengekalkan senarai objek lapisan bayang dalam state, membina rentetan CSS box-shadow yang sah pada setiap perubahan menggunakan pemformat rgba() tulisan tangan, dan mengenakannya terus pada elemen pratonton melalui prop style React supaya enjin pemaparan pelayar sendiri melukis hasilnya serta-merta.

  1. 1
    Parameter lapisan memberi makan pemformat
    Setiap lapisan bayang menyimpan ofset x/y, kabur, sebaran, warna heks, dan nilai kelegapan. Pada setiap perubahan, fungsi shadowToCss kecil menukar warna heks kepada komponen RGB dengan regex, kemudian membina rentetan rgba() β€” contohnya, 0px 4px 12px 0px rgba(0, 0, 0, 0.15). Berbilang lapisan digabung dengan koma.
  2. 2
    Pelayar memaparkan pratonton langsung
    Rentetan yang dibina ditetapkan kepada sifat gaya boxShadow elemen div terus dalam JSX. React mengemas kini atribut DOM, dan enjin CSS pelayar mengecat bayang serta-merta β€” tiada kanvas atau WebGL terlibat, hanya pemaparan CSS asli.
  3. 3
    Seret-untuk-posisi menggunakan Pointer Events API
    Mengklik dan menyeret kotak pratonton memanggil setPointerCapture pada elemen, kemudian menjejaki delta onPointerMove untuk mengemas kini ofset x dan y lapisan aktif secara masa nyata. Menahan Shift mengenakan faktor skala 0.25x untuk pemposisian halus.
  4. 4
    Output disalin ke papan keratan
    Alat ini menghasilkan dua format output daripada data lapisan yang sama: pengisytiharan CSS box-shadow standard, dan kelas nilai-sembarang Tailwind (shadow-[...]) di mana ruang digantikan dengan garis bawah mengikut peraturan sintaks Tailwind. Salinan satu-klik menggunakan navigator.clipboard.writeText.

Alat berkaitan

Soalan lazim