Rumah >hujung hadapan web >tutorial css >Mengapa Elemen Melekit Saya Tidak Berfungsi dalam Bekas Flexbox?

Mengapa Elemen Melekit Saya Tidak Berfungsi dalam Bekas Flexbox?

DDD
DDDasal
2024-12-15 01:22:21165semak imbas

Why Doesn't My Sticky Element Work in a Flexbox Container?

Flexbox Gotcha: Kedudukan: Elemen Melekit Berkelakuan Tidak Dijangka

Pembangun sering menghadapi tingkah laku yang tidak dijangka apabila menggunakan kedudukan: melekit dalam bekas flexbox. Secara lalai, elemen flexbox meregang untuk mengisi ruang yang tersedia, menghasilkan ketinggian yang sama untuk semua elemen, yang menghalang penatalan dan menjadikan elemen melekit tidak berfungsi.

Penyelesaian terletak pada mengubah suai sifat jajaran-diri elemen melekit untuk flex-start, yang menetapkan semula ketinggiannya kepada auto. Ini membolehkan penatalan dan membenarkan elemen melekit melekat pada kedudukan yang dimaksudkan.

Contoh:

Dalam kod berikut, elemen melekit tidak berfungsi dengan betul sehingga menjajar- diri: flex-start telah ditambahkan:

<div>
.flexbox-wrapper {
  display: flex;
  overflow: auto;
  height: 200px;
}
.sticky {
  position: sticky;
  top: 0;
  align-self: flex-start;
  background-color: red;
}

Pelayar Sokongan:

  • align-self: flex-start disokong dalam semua penyemak imbas utama, kecuali Safari, yang memerlukan awalan -webkit-:

    .sticky {
      position: -webkit-sticky;
      position: sticky;
      top: 0;
      align-self: flex-start;
    }

Dengan melaksanakan pembetulan ini, pembangun boleh memastikan kedudukan itu: elemen melekit berkelakuan seperti yang dimaksudkan dalam flexbox bekas.

Atas ialah kandungan terperinci Mengapa Elemen Melekit Saya Tidak Berfungsi dalam Bekas Flexbox?. 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