Rumah > hujung hadapan web > Soal Jawab bahagian hadapan > Bagaimana untuk melaksanakan mudah alih dalam css3

Bagaimana untuk melaksanakan mudah alih dalam css3

PHPz
Lepaskan: 2023-04-24 09:58:48
asal
1121 orang telah melayarinya

CSS3 merealisasikan mudah alih

Dengan populariti peranti mudah alih dan pembangunan aplikasi web, kami semakin perlu melaksanakan kesan mudah alih dalam halaman web. CSS3 menyediakan beberapa sifat berkaitan mudah alih baharu dan artikel ini akan memperkenalkan beberapa ciri yang paling biasa digunakan.

  1. transformasi atribut

Atribut transformasi boleh menukar bentuk, saiz, kedudukan, dsb. elemen. Antaranya, fungsi terjemah dapat merealisasikan terjemahan unsur. Ia menerima dua parameter, masing-masing mewakili jarak terjemahan dalam arah mendatar dan menegak. Sebagai contoh, kod berikut menterjemahkan elemen div 50 piksel ke kanan dan 50 piksel ke bawah:

div {
  transform: translate(50px, 50px);
}
Salin selepas log masuk

Anda juga boleh menggunakan peratusan sebagai parameter dalam fungsi terjemah untuk mewakili jarak terjemahan berbanding dengan lebar dan tinggi unsur itu sendiri. Sebagai contoh, kod berikut menterjemahkan elemen div 50% daripada lebar dan tingginya ke kanan dan 50% daripada ketinggiannya:

div {
  transform: translate(50%, 50%);
}
Salin selepas log masuk
  1. atribut peralihan Perubahan dalam elemen menentukan kesan peralihan. Ia menerima empat parameter, mewakili atribut yang diubah, masa peralihan, jenis peralihan dan masa tunda. Sebagai contoh, kod berikut mentakrifkan kesan peralihan lancar 0.5 saat untuk atribut transformasi elemen div:

Apabila nilai atribut transformasi elemen div berubah, ia akan berubah dengan lancar daripada keadaan asal Peralihan kepada keadaan baharu dengan tempoh 0.5 saat dan jenis peralihan yang mudah. Kita boleh menetapkan berbilang atribut peralihan dalam CSS Sebagai contoh, kod berikut mentakrifkan kesan peralihan untuk setiap atribut kelegapan dan mengubah atribut elemen div:

div {
  transition: transform 0.5s ease;
}
Salin selepas log masuk

animasi bingkai kunci
div {
  transition: opacity 0.5s ease, transform 0.5s ease;
}
Salin selepas log masuk
  1. animasi bingkai utama boleh mencapai kesan animasi yang lebih kompleks. Ia mentakrifkan garis masa dan mentakrifkan keadaan elemen pada titik masa yang berbeza. Sebagai contoh, kod berikut mentakrifkan kesan animasi yang bergerak masuk dari kiri:

Garis masa animasi ini dibahagikan kepada beberapa titik masa, di mana from mewakili keadaan pada permulaan animasi dan untuk mewakili penghujung status animasi pada masa itu. Kita boleh menentukan sebarang bilangan titik masa pada garis masa dan menetapkan keadaan elemen yang berbeza pada titik masa yang berbeza untuk mencapai kesan animasi yang lebih pelbagai.

@keyframes movetoright {
  from {
    transform: translateX(-100%);
  }

  to {
    transform: translateX(0%);
  }
}

div {
  animation: movetoright 1s ease;
}
Salin selepas log masuk

acara sentuh

  1. Apabila berinteraksi pada peranti mudah alih, biasanya kita perlu mendengar acara sentuhan. Berikut ialah jenis acara sentuh yang biasa digunakan:

mula sentuh: dicetuskan apabila jari mula menyentuh skrin

    gerakan sentuh: dicetuskan apabila jari meluncur pada skrin;
  • sentuhan: Dicetuskan apabila jari meninggalkan skrin;
  • batal sentuhan: dicetuskan apabila sistem membatalkan acara sentuhan, seperti panggilan mengejut, dsb.
  • Sebagai contoh, dalam kod berikut, apabila pengguna meluncur pada elemen div, kedudukan elemen div akan ditukar:
Dalam kod ini, kami dengar acara mula sentuh dan Peristiwa gerak sentuh masing-masing memperoleh kedudukan awal dan kedudukan semasa jari, dan mengira jarak pergerakan jari pada skrin. Kemudian, dengan menetapkan atribut terjemah, kesan terjemahan unsur div dicapai.

Ringkasan
<div id="move-box">
  拖我
</div>

<script>
var box = document.getElementById('move-box');
var startX, startY, moveX, moveY;

box.addEventListener('touchstart', function(e) {
  var touch = e.touches[0];
  startX = touch.clientX;
  startY = touch.clientY;
});

box.addEventListener('touchmove', function(e) {
  var touch = e.touches[0];
  moveX = touch.clientX - startX;
  moveY = touch.clientY - startY;
  box.style.transform = 'translate(' + moveX + 'px, ' + moveY + 'px)';
});
</script>
Salin selepas log masuk

Di atas memperkenalkan beberapa sifat berkaitan mudah alih yang paling biasa digunakan dalam CSS3, termasuk transformasi, peralihan, animasi bingkai utama dan peristiwa sentuhan. Ciri-ciri ini memberikan fleksibiliti yang hebat untuk melaksanakan pelbagai kesan pergerakan. Apabila membangunkan aplikasi web, kami boleh menggunakan atribut ini secara fleksibel mengikut keperluan khusus untuk mencipta pengalaman pengguna yang lebih berwarna.

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan mudah alih dalam css3. 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