Rumah >hujung hadapan web >tutorial css >Bagaimana untuk Mencegah Flash Kandungan Tidak Gaya (FOUC) Tanpa JavaScript?

Bagaimana untuk Mencegah Flash Kandungan Tidak Gaya (FOUC) Tanpa JavaScript?

DDD
DDDasal
2024-11-14 11:51:02203semak imbas

How to Prevent Flash of Unstyled Content (FOUC) Without JavaScript?

Menghapuskan Kilat Kandungan Tidak Digayakan

Kilat kandungan tidak digayakan (FOUC) merujuk kepada detik singkat apabila halaman web muncul dengan elemen HTML mentah sebelum gaya CSS digunakan. Kesan menggelegar ini boleh memberi kesan negatif kepada pengalaman pengguna.

Penyelesaian: Menggunakan JavaScript

Penyelesaian biasa melibatkan pada mulanya menyembunyikan elemen menggunakan CSS dan kemudian menggunakan JavaScript untuk menyahsembunyikannya sebaik sahaja halaman dimuatkan. Walau bagaimanapun, pendekatan ini boleh menjadi masalah bagi pengguna yang telah melumpuhkan JavaScript.

Pendekatan yang Lebih Baik: Menyembunyikan Elemen HTML

Daripada menyembunyikan elemen individu, pendekatan yang lebih berkesan adalah untuk menyembunyikan keseluruhan elemen HTML menggunakan JavaScript. Ini boleh dicapai dengan menambahkan kelas tersembunyi pada teg HTML dalam bahagian:

<html>
  <head>
    <style type="text/css">
      .hidden { display: none; }
    </style>
    <!-- ... -->
  </head>
  <body>
    <!-- Body Content -->
  </body>
</html>

Dalam kod JavaScript, kaedah addClass() digunakan untuk menyembunyikan elemen HTML sebelum dokumen sedia:

$('html').addClass('hidden');

Setelah halaman dimuatkan (atau dokumen sudah sedia), elemen HTML boleh dilihat:

$(document).ready(function() {
  $('html').removeClass('hidden');
});

Dengan menyembunyikan elemen HTML, semua elemen anaknya disembunyikan juga, menghalang sebarang FOUC. Ambil perhatian bahawa kaedah addClass() harus dipanggil di luar fungsi .ready() untuk pendekatan ini berfungsi dengan berkesan.

Atas ialah kandungan terperinci Bagaimana untuk Mencegah Flash Kandungan Tidak Gaya (FOUC) Tanpa JavaScript?. 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