Cara menggunakan CSS untuk mencapai kesan membalikkan imej

PHPz
Lepaskan: 2023-04-25 11:16:47
asal
3005 orang telah melayarinya

Dalam reka bentuk dan pembangunan tapak web moden, kesan flip imej telah menjadi elemen reka bentuk yang sangat popular dan biasa. Melalui kesan ini, pengguna dapat merasakan daya hidup dan dinamik tapak web dengan lebih intuitif. Dalam artikel ini, kami akan memberi tumpuan kepada cara menggunakan CSS untuk mencapai kesan flip imej ini.

Pertama sekali, kita perlu menjelaskan bahawa CSS3 menyediakan dua cara untuk mencapai kesan flip imej. Mereka menggunakan transformasi 2D dan transformasi 3D masing-masing.

Penjelmaan 2D merujuk kepada memutarkan elemen dengan sudut tertentu di sepanjang paksi-x atau paksi-y untuk memberikannya kesan flip dua dimensi. Transformasi 3D adalah berdasarkan 2D dan menambah putaran di sepanjang paksi z, memberikan elemen kesan flip tiga dimensi.

Mari kita lihat dahulu kod untuk menyelak imej menggunakan transformasi 2D. Pertama, kita perlu mentakrifkan elemen imej dalam HTML dan menggunakan CSS untuk menetapkan saiz dan kedudukannya dalam halaman web:

<div class="flip-container">
  <div class="flipper">
    <img src="image.jpg" alt="Image">
  </div>
</div>
Salin selepas log masuk
.flip-container {
  width: 200px;
  height: 200px;
  perspective: 1000px;
}
.flipper {
  width: 100%;
  height: 100%;
  position: relative;
  transform-style: preserve-3d;
  transition: all .5s ease-in-out;
}
.flipper:hover {
  transform: rotateY(180deg);
}
img {
  position: absolute;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
}
Salin selepas log masuk

Seperti yang anda lihat, kami mula-mula mentakrifkan .flip-container elemen, tetapkan lebar dan ketinggiannya, dan gunakan atribut perspektif untuk menentukan sudut tontonan. Ini adalah sifat yang diperlukan untuk transformasi 3D.

Seterusnya, kami mentakrifkan elemen .flipper dan menetapkan lebar, ketinggian dan kedudukannya. Pada masa yang sama, kita juga perlu menetapkan sifat gaya transformasinya kepada preserve-3d untuk mendayakan transformasi 3D. Pada elemen ini, kami juga menentukan kelas pseudo :hover Apabila tetikus melayang di atas elemen ini, animasi putaran akan dicetuskan untuk membalikkan gambar.

Akhir sekali, kami mentakrifkan elemen img, menetapkan lebar, ketinggian dan kedudukannya serta menyembunyikan bahagian belakangnya menggunakan sifat keterlihatan muka belakang. Ini kerana apabila elemen dibalikkan, bahagian belakang terdedah, yang, jika tidak disembunyikan, menjejaskan keseluruhan pengalaman kesan.

Seterusnya, mari kita lihat cara menggunakan transformasi 3D untuk mencapai kesan flip imej. Proses ini sangat serupa dengan transformasi 2D Anda hanya perlu menambah putaran di sepanjang paksi z pada elemen .flipper:

<div class="flip-container">
  <div class="flipper">
    <div class="front">
      <img src="front-image.jpg" alt="Front Image">
    </div>
    <div class="back">
      <img src="back-image.jpg" alt="Back Image">
    </div>
  </div>
</div>
Salin selepas log masuk
.flip-container {
  width: 200px;
  height: 200px;
  perspective: 1000px;
}
.flipper {
  width: 100%;
  height: 100%;
  position: relative;
  transform-style: preserve-3d;
  transition: all .5s ease-in-out;
}
.flipper:hover {
  transform: rotateY(180deg);
}
.front, .back {
  position: absolute;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
}
.front {
  transform: rotateY(0deg);
}
.back {
  transform: rotateY(180deg);
}
Salin selepas log masuk

Seperti yang anda lihat, dalam kes ini, kita perlu Elemen .flipper menempatkan dua sub-elemen, .depan dan .belakang, dan masing-masing menetapkan kandungan dan gayanya. Dalam proses ini, kita juga perlu menggunakan keterlihatan muka belakang untuk menyembunyikan bahagian belakang elemen.

Pada masa yang sama, pada elemen .depan dan .belakang, kita juga perlu menetapkan atribut putaran yang berbeza di sepanjang paksi-z supaya ia boleh terbalik pada sudut yang berbeza.

Selain daripada dua kaedah di atas, terdapat cara lain yang lebih kompleks untuk mencapai kesan membalikkan imej, seperti menggunakan animasi CSS, JavaScript dan teknologi lain. Anda boleh memilih penyelesaian yang paling sesuai berdasarkan keperluan sebenar.

Ringkasnya, menggunakan CSS untuk mencapai kesan menyelak imej ialah cara yang sangat mudah, intuitif dan mudah untuk dilaksanakan. Dengan menguasai transformasi 2D dan transformasi 3D CSS3, anda boleh mencapai kesan yang diingini dengan mudah dan meningkatkan kesan visual dan pengalaman pengguna tapak web.

Atas ialah kandungan terperinci Cara menggunakan CSS untuk mencapai kesan membalikkan imej. 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