Rumah hujung hadapan web tutorial css Bagaimana untuk Mengekalkan Nisbah Aspek Apabila Auto-Saiz Semula Elemen Div?

Bagaimana untuk Mengekalkan Nisbah Aspek Apabila Auto-Saiz Semula Elemen Div?

Nov 23, 2024 pm 03:05 PM

How to Maintain Aspect Ratio When Auto-Resizing a Div Element?

Cara Mengekalkan Nisbah Aspek Semasa Mengubah Saiz Elemen Div Secara Automatik

Mencipta elemen div yang melaraskan saiznya secara automatik sambil mengekalkan nisbah aspek tertentu boleh menjadi cabaran. Matlamatnya adalah untuk memastikan div kekal berpusat di dalam tetingkap, mengecut atau mengembang mengikut keperluan agar sesuai dengan ruang yang tersedia tanpa memesongkan bentuknya.

Kunci untuk mencapainya terletak pada penggunaan sifat CSS yang membenarkan nisbah aspek kawalan dan saiz penyesuaian. Sifat nisbah aspek ialah alat berkuasa yang diperkenalkan dalam CSS3 yang membolehkan pembangun menentukan nisbah intrinsik antara ketinggian dan lebar. Nisbah ini akan dikekalkan tanpa mengira ruang yang tersedia.

Selain nisbah bidang, sifat lebar min dan ketinggian min boleh digunakan untuk menetapkan dimensi minimum untuk div. Dengan menggabungkan sifat ini, kita boleh mencipta elemen div yang menghormati nisbah bidang yang ditentukan sambil turut menyesuaikan dalam ruang tetingkap yang tersedia.

Pertimbangkan kod CSS berikut:

body {
  height: 100vh;
  margin: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background: gray;
}


.stage {
  --r: 960 / 540;

  aspect-ratio: var(--r);
  width:min(90%, min(960px, 90vh*(var(--r))));

  display: flex;
  justify-content: center;
  align-items: center;


  background: linear-gradient(30deg,red 50%,transparent 50%),
    chocolate;
}
Salin selepas log masuk

Dalam contoh ini , kami mentakrifkan pembolehubah --r untuk menyimpan nisbah 960 hingga 540, mewakili nisbah bidang yang diingini. Sifat nisbah aspek kemudiannya digunakan untuk mengekalkan nisbah ini.

Sifat lebar ditetapkan kepada minimum 90% daripada lebar yang tersedia, 960px atau lebar yang dikira berdasarkan nisbah tinggi dan aspek yang tersedia. Ini memastikan bahawa div akan mengekalkan nisbah yang ditentukan semasa memasang dalam tetingkap.

Sifat lebar min dan ketinggian min tidak ditetapkan secara eksplisit, tetapi nilai lalai autonya akan membolehkan div mengecut untuk menampung saiz tetingkap yang lebih kecil sambil masih mengekalkan nisbah bidang.

Harta paparan ditetapkan kepada lentur untuk membolehkan penjajaran berpusat dalam div pembalut, dan sifat justify-content dan align-item digunakan untuk memusatkan kandungan dalam div.

Akibatnya, elemen div peringkat akan mengubah saiz secara automatik sambil mengekalkan nisbah bidangnya, memastikan ia kekal berpusat dan konsisten secara visual tanpa mengira dimensi tingkap.

Atas ialah kandungan terperinci Bagaimana untuk Mengekalkan Nisbah Aspek Apabila Auto-Saiz Semula Elemen Div?. 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

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.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

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

Tutorial Java
1653
14
Tutorial PHP
1251
29
Tutorial C#
1224
24
Kad yang disusun dengan kedudukan melekit dan sasaran sass Kad yang disusun dengan kedudukan melekit dan sasaran sass Apr 03, 2025 am 10:30 AM

Pada hari yang lain, saya melihat sedikit ini sangat indah dari laman web Corey Ginnivan di mana koleksi kad timbunan di atas satu sama lain semasa anda menatal.

Fon Font Google Fon Fon Font Google Fon Apr 09, 2025 am 10:42 AM

Saya melihat Font Google melancarkan reka bentuk baru (tweet). Berbanding dengan reka bentuk besar yang terakhir, ini terasa lebih berulang. Saya hampir tidak dapat memberitahu perbezaannya

Cara membuat pemasa undur animasi dengan HTML, CSS dan JavaScript Cara membuat pemasa undur animasi dengan HTML, CSS dan JavaScript Apr 11, 2025 am 11:29 AM

Pernahkah anda memerlukan pemasa undur dalam projek? Untuk sesuatu seperti itu, mungkin semula jadi untuk mencapai plugin, tetapi sebenarnya lebih banyak lagi

Panduan Atribut Data HTML Panduan Atribut Data HTML Apr 11, 2025 am 11:50 AM

Semua yang anda ingin tahu mengenai atribut data dalam HTML, CSS, dan JavaScript.

Bagaimana untuk memilih elemen kanak -kanak dengan item nama kelas pertama melalui CSS? Bagaimana untuk memilih elemen kanak -kanak dengan item nama kelas pertama melalui CSS? Apr 05, 2025 pm 11:24 PM

Apabila bilangan elemen tidak ditetapkan, bagaimana untuk memilih elemen anak pertama nama kelas yang ditentukan melalui CSS. Semasa memproses struktur HTML, anda sering menghadapi unsur yang berbeza ...

Kenapa kawasan -kawasan yang dikurangkan ungu di susun atur flex tersilap dianggap sebagai 'ruang limpahan'? Kenapa kawasan -kawasan yang dikurangkan ungu di susun atur flex tersilap dianggap sebagai 'ruang limpahan'? Apr 05, 2025 pm 05:51 PM

Soalan mengenai kawasan slash ungu dalam susun atur flex Apabila menggunakan susun atur flex, anda mungkin menghadapi beberapa fenomena yang mengelirukan, seperti dalam alat pemaju (D ...

Bukti konsep untuk menjadikan sass lebih cepat Bukti konsep untuk menjadikan sass lebih cepat Apr 16, 2025 am 10:38 AM

Pada permulaan projek baru, kompilasi SASS berlaku dalam sekejap mata. Ini terasa hebat, terutamanya apabila ia dipasangkan dengan BrowserSync, yang dimuat semula

See all articles