Jadual Kandungan
1. Gunakan CSS dengan JavaScript untuk pengesanan tatal
Struktur HTML Asas
CSS: Tentukan animasi mendedahkan
JavaScript: Tambahkan kelas pada tatal
2. Pilihan: Gunakan sifat tersuai CSS untuk kebolehgunaan semula
3. Petua Prestasi
4. Alternatif: Gunakan pemerhati persimpangan (disyorkan)
Rumah hujung hadapan web tutorial css Cara membuat teks mendedahkan kesan tatal dengan CSS

Cara membuat teks mendedahkan kesan tatal dengan CSS

Aug 25, 2025 am 06:06 AM
css kesan menatal

Walaupun CSS tulen tidak dapat secara langsung mencapai kesan paparan teks yang dicetuskan tatal, ia dapat dilaksanakan dengan cekap dengan menggabungkan sedikit animasi peralihan JavaScript dan CSS; Kaedah khusus adalah menggunakan JavaScript untuk mengesan sama ada elemen memasuki viewport dan menambah kelas "diturunkan". CSS bertanggungjawab untuk menentukan kesan peralihan ketelusan dan anjakan. Adalah disyorkan untuk menggunakan API Observer Persimpangan untuk meningkatkan prestasi dan akhirnya mencapai kesan paparan teks yang licin dan elegan.

Cara membuat teks mendedahkan kesan tatal dengan CSS

Mewujudkan teks mendedahkan kesan tatal dengan CSS adalah cara yang bersih dan pelaku untuk menambah interaksi halus ke laman web anda. Walaupun CSS tulen mempunyai batasan apabila ia datang kepada animasi berasaskan tatal (kerana CSS sahaja tidak dapat secara langsung mengesan kedudukan tatal), anda boleh mencapai teks yang meyakinkan mendedahkan kesan menggunakan CSS yang digabungkan dengan JavaScript yang minimum untuk pengesanan tatal. Inilah caranya dengan berkesan.

1. Gunakan CSS dengan JavaScript untuk pengesanan tatal

Kesan yang benar "pada tatal" memerlukan JavaScript untuk memantau kedudukan tatal pengguna dan mencetuskan perubahan kelas apabila elemen itu dilihat. Walau bagaimanapun, animasi dan gaya sebenar dikendalikan oleh CSS.

Struktur HTML Asas

 <div class = "reveal-container">
  <p class = "text-to-reveal"> Teks ini akan diturunkan semasa anda menatal. </P>
</div>

CSS: Tentukan animasi mendedahkan

 .text-to-reveal {
  Kelegapan: 0;
  Transform: Translate (20px);
  Peralihan: Opacity 0.8s mudah keluar, mengubah 0.8s mudah keluar;
}

.text-to-reveal.Revealed {
  Kelegapan: 1;
  Transform: Translate (0);
}

Ini menetapkan teks untuk tidak kelihatan dan sedikit beralih ke bawah. Apabila kelas revealed ditambah, ia memudar dan bergerak lancar.

JavaScript: Tambahkan kelas pada tatal

 const textelements = document.QuerySelectorAll (&#39;. text-to-reveal&#39;);

const revealonscroll = () => {
  textelements.foreach (el => {
    const elementTop = el.getBoundingClientRect (). atas;
    const windowHeight = window.InnerHeight;

    // jika elemen berada di paparan
    jika (elementTop <windowheight * 0.8) {
      el.classlist.add (&#39;mendedahkan&#39;);
    }
  });
};

// Jalankan beban dan tatal
window.addeventListener (&#39;LOAD&#39;, REPLEYONSCROLL);
window.addeventListener (&#39;scroll&#39;, revealonscroll);

Skrip ini memeriksa jika setiap elemen .text-to-reveal berada dalam 80% daripada ketinggian viewport. Anda boleh menyesuaikan 0.8 untuk mengawal apabila mendedahkan berlaku (contohnya, 0.7 untuk lebih awal, 1 untuk apabila kelihatan sepenuhnya).

2. Pilihan: Gunakan sifat tersuai CSS untuk kebolehgunaan semula

Anda boleh membuat kesan lebih fleksibel dengan menggunakan pembolehubah CSS:

 .Reveal-Container {
  -Reveal-Delay: 0.2S;
}

.text-to-reveal {
  Kelegapan: 0;
  Transform: Translate (20px);
  Peralihan: Opacity 0.8s mudah keluar, mengubah 0.8s mudah keluar;
  Peralihan-kelewatan: var (-mendedahkan-delay, 0s);
}

.text-to-reveal.Revealed {
  Kelegapan: 1;
  Transform: Translate (0);
  Peralihan-kelewatan: var (-mendedahkan-delay, 0s);
}

Sekarang anda boleh mengawal masa setiap elemen:

 <div class = "reveal-container" style = "-reveal-delay: 0.3s;">
  <p class = "text-to-reveal"> mendedahkan sedikit kemudian </p>
</div>

3. Petua Prestasi

  • Throttle acara tatal untuk mengelakkan masalah prestasi:

     biarkan isscrolling = false;
    window.addeventListener (&#39;tatal&#39;, () => {
      jika (! isscrolling) {
        window.requestanimationFrame (() => {
          revealonscroll ();
          isscrolling = false;
        });
        isscrolling = true;
      }
    });
  • Gunakan transform dan opacity untuk animasi-mereka adalah GPU yang dipercepatkan dan melakukan lebih baik daripada margin animasi atau top .

  • Elakkan melampirkan pendengar kepada terlalu banyak elemen; Pertimbangkan menggunakan corak pemerhati tunggal untuk pelbagai elemen mendedahkan.

4. Alternatif: Gunakan pemerhati persimpangan (disyorkan)

Untuk prestasi yang lebih baik dan kod bersih, gunakan API IntersectionObserver :

 const Observer = New IntersectionObserver ((entri) => {
  entri.Foreach (entry => {
    jika (entry.isintersecting) {
      entry.target.classlist.add (&#39;diturunkan&#39;);
      // Pilihan: Berhenti memerhati setelah mendedahkan
      Observer.unobserve (entry.target);
    }
  });
}, {ambang: 0.1}); // mencetuskan apabila 10% elemen dapat dilihat

document.QuerySelectorAll (&#39;. Text-to-reveal&#39;). Foreach (el => {
  Observer.observe (EL);
});

Ini lebih cekap daripada mendengar setiap acara tatal dan merupakan standard moden untuk mendedahkan berasaskan skrol.


Pada asasnya, semasa anda tidak dapat melakukan tatal yang benar-benar dicetuskan dengan hanya CSS, menggabungkan JavaScript yang minimum dengan peralihan CSS yang lancar memberi anda kesan teks yang kuat dan pelaku. Gunakan IntersectionObserver untuk hasil terbaik dan simpan animasi halus untuk melihat profesional.

Atas ialah kandungan terperinci Cara membuat teks mendedahkan kesan tatal dengan CSS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Stock Market GPT

Stock Market GPT

Penyelidikan pelaburan dikuasakan AI untuk keputusan yang lebih bijak

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Cara menggayakan tekstasi dengan CSS Cara menggayakan tekstasi dengan CSS Sep 16, 2025 am 07:00 AM

Pertama, tetapkan gaya asas seperti lebar, ketinggian, margin, sempadan, fon dan warna; 2. Meningkatkan maklum balas interaktif melalui: hover dan: fokus keadaan; 3. Gunakan atribut saiz semula untuk mengawal tingkah laku saiz semula; 4. Gunakan :: Pseudo-elemen tempat untuk gaya teks pemegang tempat; 5. Gunakan reka bentuk responsif untuk memastikan ketersediaan silang peranti; 6. Beri perhatian kepada label berkorelasi, kontras warna dan garis besar fokus untuk memastikan kebolehcapaian, dan akhirnya mencapai gaya Textarea yang indah dan berfungsi.

Cara Membuat Menu Dropdown Dengan CSS Murni Cara Membuat Menu Dropdown Dengan CSS Murni Sep 20, 2025 am 02:19 AM

Gunakan HTML dan CSS untuk membuat menu drop-down tanpa JavaScript. 2. Memicu paparan submenu melalui: hover pseudo-class. 3. Gunakan senarai bersarang untuk membina struktur, dan tetapkan kesan paparan tersembunyi dan digantung dalam CSS. 4. Animasi peralihan boleh ditambah untuk meningkatkan pengalaman visual.

Cara Menggunakan Harta Penunjuk-Titik di CSS Cara Menggunakan Harta Penunjuk-Titik di CSS Sep 17, 2025 am 07:30 AM

ThePointer-EventsPropertyIncScontrolswhetheranelementCanBethetargetOfPointerevents.1.usepointer-Events: nonetodisableIntionsLikeClicksorhoversWheLeepingTheelementVisibleVisible.2.applyoverlaystoundlowlickeWough

Cara Mencegah Imej Dari Regangan atau Mengecam Dengan CSS Cara Mencegah Imej Dari Regangan atau Mengecam Dengan CSS Sep 21, 2025 am 12:04 AM

UseObject-Fitormax-Widthwithheight: AutotopreventimagedIstion; Object-FitControlShowimagesfillConterswhilePreservingaseSpectratios, andmax-width: 100%; Height: AutoensureSressiveSsiveScalingWithoutStretching.

Cara Menambah Kesan Bayangan Kotak Dengan CSS Cara Menambah Kesan Bayangan Kotak Dengan CSS Sep 20, 2025 am 12:23 AM

Usethebox-shadowpropertytoadddropshadows.Definehorizontalandverticaloffsets,blur,spread,color,andoptionalinsetforinnershadows.Multipleshadowsarecomma-separated.Example:box-shadow:5px10px8pxrgba(0,0,0,0.3);createsasoftblackshadow.

Cara menambah latar belakang kecerunan dalam css Cara menambah latar belakang kecerunan dalam css Sep 16, 2025 am 05:30 AM

Untuk menambah latar belakang kecerunan CSS, gunakan latar belakang atau atribut imej latar belakang untuk bekerjasama dengan fungsi seperti linear-gradient (), radial-gradient (); Mula-mula pilih jenis kecerunan, tetapkan arah dan warna, dan anda boleh mengawalnya dengan halus melalui titik dok, bentuk, saiz dan parameter lain, seperti gradien linear (toright,#ff7e5f,#feb47b)

Cara membuat teks responsif dengan CSS Cara membuat teks responsif dengan CSS Sep 15, 2025 am 05:48 AM

TomakeTextresponsiveincss, userelativeUnitslikerem, vw, andclamp () withmediaqueries.1.ReplaceFixedPixelSwithRemforconsistentscali ngbasedOnrootfontsize.2.usevwforfluidscalingButCombinewithCalc () Orclamp () TopreventExtremes.3.applyMediaqueriesatCommonbreakpo

Bagaimana untuk membuat imej bulat dalam CSS? Bagaimana untuk membuat imej bulat dalam CSS? Sep 15, 2025 am 05:33 AM

Gunakan Radius Sempadan: 50% untuk menghidupkan imej lebar dan ketinggian yang sama ke dalam bulatan, menggabungkan objek-sesuai dan aspek nisbah untuk memastikan bentuk dan penanaman, dan menambah sempadan, bayang-bayang dan gaya lain untuk meningkatkan kesan visual.

See all articles