Rumah >hujung hadapan web >tutorial css >Bagaimanakah Saya Boleh Mengekalkan Nisbah Aspek Apabila Mengubah Saiz Div secara Responsif dengan CSS?

Bagaimanakah Saya Boleh Mengekalkan Nisbah Aspek Apabila Mengubah Saiz Div secara Responsif dengan CSS?

DDD
DDDasal
2024-12-23 19:14:17887semak imbas

How Can I Maintain Aspect Ratio When Responsively Resizing a Div with CSS?

Responsif Mengubah Dimensi Div Sambil Mengekalkan Nisbah Aspek

Apabila bekerja dengan imej, menggunakan nilai peratusan pada lebar atau ketinggiannya mengekalkan nisbah aspeknya apabila ia mengembang atau mengecut. Walau bagaimanapun, mereplikasi gelagat ini dengan elemen lain boleh menjadi mencabar.

Nasib baik, CSS menawarkan penyelesaian untuk memautkan lebar dan ketinggian elemen menggunakan peratusan, memastikan nisbah aspeknya kekal konsisten.

Penyelesaian Menggunakan CSS

Ini boleh dicapai melalui fakta yang mengejutkan bahawa nilai peratusan harta padding-top adalah relatif kepada lebar blok yang mengandungi. Pertimbangkan coretan CSS berikut:

.wrapper {
  width: 50%;
  display: inline-block;
  position: relative;
}
.wrapper:after {
  padding-top: 56.25%;
  display: block;
  content: '';
}
.main {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background-color: deepskyblue;
  color: white;
}

Contoh HTML:

<div class="wrapper">
  <div class="main">
    This is your div with the specified aspect ratio.
  </div>
</div>

Dalam contoh ini, div ".wrapper" menetapkan lebar kepada 50% ( atau mana-mana peratusan yang diingini) dan mencipta konteks relatif untuk ".utama" dalaman div.

Unsur pseudo ".wrapper:after" menggunakan sifat padding-top untuk mewujudkan nisbah padding 56.25%. Nisbah ini mewakili nisbah bidang 16:9, memastikan bahawa div ".utama" sentiasa mengekalkan nisbah bidang itu.

Akhir sekali, div ".utama" mengisi keseluruhan bekas ".wrapper" sambil mengekalkan aspeknya nisbah dan mempamerkan latar belakang biru langit dan teks putihnya.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengekalkan Nisbah Aspek Apabila Mengubah Saiz Div secara Responsif dengan CSS?. 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