Analisis sebab kedudukan tetap tidak boleh digunakan dalam HTML

PHPz
Lepaskan: 2024-01-20 10:20:18
asal
1170 orang telah melayarinya

Analisis sebab kedudukan tetap tidak boleh digunakan dalam HTML

Analisis sebab kedudukan tetap tidak boleh digunakan dalam HTML

Dalam HTML, kedudukan tetap (kedudukan tetap) bermakna elemen diposisikan secara relatif kepada kedudukan tetingkap penyemak imbas dan tidak akan mengubah kedudukannya sebagai halaman skrol. Walau bagaimanapun, dalam beberapa kes kami mendapati bahawa kami tidak dapat mencapai kesan yang kami mahu menggunakan kedudukan tetap. Artikel ini akan menganalisis sebab kedudukan tetap tidak boleh digunakan dalam HTML dan memberikan contoh kod khusus.

1. Sebab mengapa kedudukan tetap tidak boleh digunakan

  1. Elemen induk tidak ditetapkan kepada kedudukan relatif atau kedudukan mutlak

Apabila elemen ingin menggunakan kedudukan tetap, elemen induknya mestilah sekurang-kurangnya menetapkan kedudukan relatif (kedudukan: relatif;) atau Kedudukan mutlak (kedudukan: mutlak;). Jika elemen induk tidak menetapkan atribut kedudukan, elemen anak tidak boleh menggunakan kedudukan tetap.

  1. Menetapkan atribut limpahan elemen induk

Jika atribut limpahan elemen induk ditetapkan kepada tersembunyi (limpahan: tersembunyi;), elemen anak akan disembunyikan apabila menggunakan kedudukan tetap. Oleh itu, pastikan atribut limpahan elemen induk tidak disembunyikan atau letakkan elemen anak di luar elemen induk.

  1. Penghadan pada kedudukan elemen berbanding port pandangan penyemak imbas

Kedudukan tetap diposisikan berbanding dengan port pandangan tetingkap penyemak imbas Oleh itu, terdapat had berikut:

  • Elemen tidak boleh diletakkan secara tetap berbanding elemen lain, hanya Boleh. relatif kepada tetingkap penyemak imbas; kedudukan kedudukan tetap elemen
  • tidak boleh dipengaruhi oleh elemen lain Walaupun elemen lain diletakkan, ia tidak akan menjejaskan elemen kedudukan tetap.
  1. Atribut kedudukan elemen ditindih

Jika atribut kedudukan (kedudukan) elemen ditindih oleh gaya lain, kedudukan tetap tidak akan berkuat kuasa. Pastikan sifat kedudukan elemen tidak ditindih atau ditetapkan dengan tidak betul.

2. Contoh Kod

Contoh kod khusus diberikan di bawah untuk menunjukkan sebab kedudukan tetap tidak boleh digunakan dalam HTML.

<!DOCTYPE html>
<html>
<head>
<style>
.container {
  width: 100%;
  height: 2000px;
}

.fixed {
  position: fixed;
  top: 20px;
  left: 20px;
  background-color: red;
  color: white;
  padding: 10px;
}

.overflow-hidden {
  overflow: hidden;
}

.relative-parent {
  position: relative;
}

.absolute-parent {
  position: absolute;
  top: 0;
  left: 0;
}

.other-element {
  position: relative;
  top: 50px;
  left: 50px;
  background-color: blue;
  color: white;
  padding: 10px;
}
</style>
</head>
<body>
<div class="container overflow-hidden">
  <div class="fixed">我应该是固定定位,但我被隐藏了</div>
</div>

<div class="container relative-parent">
  <div class="fixed">我是固定定位,因为父元素设置了相对定位</div>
</div>

<div class="container absolute-parent">
  <div class="fixed">我是固定定位,因为父元素设置了绝对定位</div>
</div>

<div class="container">
  <div class="other-element">我不影响固定定位的元素</div>
  <div class="fixed">我是固定定位,因为没有其他元素影响我</div>
</div>
</body>
</html>
Salin selepas log masuk

Dalam kod di atas, ia mula-mula menunjukkan situasi di mana kedudukan tetap elemen anak disembunyikan apabila atribut limpahan elemen induk ditetapkan kepada tersembunyi. Kemudian, penerapan kedudukan tetap ditunjukkan dengan menetapkan kedudukan relatif dan kedudukan mutlak elemen induk. Akhir sekali, dengan menambahkan elemen lain, ia telah disahkan bahawa kedudukan tetap tidak dipengaruhi oleh elemen lain.

Ringkasan

Artikel ini menganalisis sebab kedudukan tetap tidak boleh digunakan dalam HTML dan memberikan contoh kod khusus untuk menunjukkan sebab ini. Apabila menulis HTML dan CSS, perhatian khusus perlu diberikan untuk menangani isu di atas untuk memastikan elemen menggunakan kedudukan tetap dengan betul.

Atas ialah kandungan terperinci Analisis sebab kedudukan tetap tidak boleh digunakan dalam HTML. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan