Rumah > hujung hadapan web > tutorial css > Bagaimanakah Saya Boleh Jadikan Lebar Minimum Elemen Sama dengan Tinggi Dinamiknya Menggunakan CSS?

Bagaimanakah Saya Boleh Jadikan Lebar Minimum Elemen Sama dengan Tinggi Dinamiknya Menggunakan CSS?

Linda Hamilton
Lepaskan: 2024-12-26 05:10:11
asal
468 orang telah melayarinya

How Can I Make an Element's Minimum Width Equal to Its Dynamic Height Using CSS?

Menetapkan Lebar Elemen Berdasarkan Tinggi Melalui CSS

Masalah:

Bagaimana anda boleh memastikan bahawa lebar minimum elemen sama dengan ketinggiannya, tanpa menetapkan ketinggian secara eksplisit? Ini amat berguna apabila ketinggian adalah dinamik dan tidak boleh ditetapkan di hadapan.

Penyelesaian Kemungkinan:

1. Pendekatan jQuery:

Menggunakan jQuery, anda boleh menetapkan lebar minimum elemen agar sepadan dengan ketinggian semasanya:

$(document).ready(function() {
    $('.myClass').each(function() {
        $(this).css('min-width', $(this).css('height'));
    });
});
Salin selepas log masuk

2. Pendekatan CSS Sahaja (Tipu Nisbah Aspek):

Anehnya, adalah mungkin untuk mencapai tingkah laku yang diingini secara langsung dalam CSS tanpa JavaScript. Kuncinya ialah menggunakan elemen:

.container {
    position: relative;
    display: inline-block;
    height: 50vh; /* Adjust this based on desired height */
}

.container > img {
    height: 100%; /* Inherits container's height */
}

.contents {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
Salin selepas log masuk

elemen akan secara automatik menskalakan lebarnya untuk mengekalkan nisbah aspek intrinsiknya 1:1. Ini bermakna bahawa lebar dan elemen yang terkandung di dalamnya () akan sentiasa sama dengan ketinggian bekas.

Penyesuaian:

Untuk menyesuaikan nisbah bidang, laraskan ketinggian unsur. Contohnya, untuk mencipta nisbah bidang 4:3, tetapkan ketinggian hingga 133%.

Demo Langsung:

https://jsbin.com/koyukuh/edit

Kaedah Ganti (Kanvas atau SVG):

Anda juga boleh menggunakan atau elemen bukannya untuk mencipta tingkah laku nisbah aspek. Prinsipnya tetap sama.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Jadikan Lebar Minimum Elemen Sama dengan Tinggi Dinamiknya Menggunakan CSS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan