首頁 >web前端 >css教學 >如何消除無樣式內容的 Flash (FOUC)?

如何消除無樣式內容的 Flash (FOUC)?

Susan Sarandon
Susan Sarandon原創
2024-12-08 05:31:10555瀏覽

How to Eliminate Flash of Unstyled Content (FOUC)?

避免無樣式內容 Flash 的策略

無樣式內容 (FOUC) 的存在可能會破壞網頁上的使用者體驗。本文深入探討了消除 FOUC 的方法。

使用 JavaScript 立即隱藏元素

最初使用 CSS 隱藏元素,然後使用 JavaScript 重新顯示對於禁用 JavaScript 的用戶來說是有問題的。更全面的方法是使用 JavaScript 在頁面載入後隱藏和重新顯示元素。

使用 jQuery,人們可能會考慮隱藏 body 元素,如下所示:

$(document).ready(function() {
    $('body').hide();
    $(window).on('load', function() {
        $('body').show();
    });
});

但是,此方法可能如果頁麵包含大量元素,仍然會導致 FOUC。因此,請考慮在文件完全載入之前隱藏 HTML 標籤:

<html>
  <head>
    <!-- Head content -->
    <style type="text/css">
      .hidden {display:none;}
    </style>
    <script type="text/javascript" src="/scripts/jquery.js"></script>
    <script type="text/javascript">
      $('html').addClass('hidden');
      $(window).on('load', function () {
        $('html').removeClass('hidden');  
     });  
   </script>
   </head>
   <body>
   <!-- Body Content -->
   </body>
</html>

請注意,addClass() 方法在 .ready() 方法之外執行,以確保立即隱藏元素。

以上是如何消除無樣式內容的 Flash (FOUC)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn