Rumah >hujung hadapan web >tutorial css >Bagaimanakah Saya Boleh Menggayakan Butang Input Fail Tersuai Tanpa JavaScript?

Bagaimanakah Saya Boleh Menggayakan Butang Input Fail Tersuai Tanpa JavaScript?

Barbara Streisand
Barbara Streisandasal
2024-12-13 19:33:11306semak imbas

How Can I Style Custom File Input Buttons Without JavaScript?

Penggayaan Input Fail Tersuai: Pendekatan Berasaskan Label

Ramai pembangun bergelut untuk menyesuaikan penampilan butang muat naik fail. Walaupun JavaScript boleh menawarkan penyelesaian, ia juga boleh memperkenalkan cabaran tambahan. Nasib baik, terdapat pendekatan yang lebih mudah dan merentas platform menggunakan HTML

Faedah Menggunakan

Menggunakan

  • Tiada JavaScript Diperlukan:
  • Kebebasan dalam Penggayaan: Tidak seperti beberapa teknik penggayaan khusus penyemak imbas,
  • Kod Semantik:

Pelaksanaan

Untuk melaksanakan pendekatan ini, ikuti langkah berikut:

  1. Balut input muat naik fail tersembunyi anda dalam
  2. Gayakan
  3. Letakkan input sepenuhnya di luar kawasan yang boleh dilihat untuk menghalang interaksi pengguna dengan butang lalai.

Kod Contoh

<label class="myLabel">
    <input type="file" required>
    <span>My Label</span>
</label>
label.myLabel input[type="file"] {
    position:absolute;
    top: -1000px;
}

/***** Example custom styling *****/
.myLabel {
    border: 2px solid #AAA;
    border-radius: 4px;
    padding: 2px 5px;
    margin: 2px;
    background: #DDD;
    display: inline-block;
}
.myLabel:hover {
    background: #CCC;
}
.myLabel:active {
    background: #CCF;
}
.myLabel :invalid + span {
    color: #A44;
}
.myLabel :valid + span {
    color: #4A4;
}

Dalam contoh ini, input diletakkan di luar skrin dengan bahagian atas: -1000px. Penggayaan digunakan pada

Kesimpulan

Pendekatan berasaskan

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggayakan Butang Input Fail Tersuai Tanpa JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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