Rumah >hujung hadapan web >tutorial css >Bagaimanakah Saya Boleh Mengesan Apabila Fon Telah Dimuat Menggunakan @font-face untuk Mengelakkan FOUC?

Bagaimanakah Saya Boleh Mengesan Apabila Fon Telah Dimuat Menggunakan @font-face untuk Mengelakkan FOUC?

Patricia Arquette
Patricia Arquetteasal
2024-12-18 05:22:10758semak imbas

How Can I Detect When a Font Has Loaded Using @font-face to Avoid FOUC?

Mengesan Status Memuatkan Fon Menggunakan @font-face

Selalunya, pembangun web menghadapi situasi di mana ikon atau fon dipaparkan dengan aksara pemegang tempat sehingga fail fon dimuatkan sepenuhnya. Ini boleh mengganggu atau mengganggu pengalaman pengguna. Untuk menangani isu ini, mengetahui masa fon telah dimuatkan adalah penting.

Masalah Pengesanan Muatan Fon

Dalam senario khusus yang dinyatakan dalam soalan, Font-Awesome ikon pada mulanya dipaparkan sebagai  disebabkan oleh pemuatan fail fon yang tertangguh. Matlamatnya adalah untuk menyembunyikan ikon ini sehingga fon dimuatkan, mempertingkatkan penampilan visual dan kefungsian tapak web.

Penyelesaian Pengesanan Muatan Fon

Sementara menunggu keseluruhannya halaman untuk dimuatkan mungkin tidak dapat dilaksanakan, terdapat kaedah untuk menentukan sama ada fon telah dimuatkan secara khusus. Satu pendekatan yang berkesan ialah membandingkan lebar rentetan yang diberikan dalam dua fon berbeza.

Pemalam jQuery-FontSpy.js

Untuk memudahkan proses ini, jQuery-FontSpy Pemalam .js telah dibangunkan dan tersedia di GitHub (https://github.com/patrickmarabeas/jQuery-FontSpy.js). Pemalam ini menawarkan cara intuitif untuk mengesan pemuatan fon dan menggunakan penggayaan sewajarnya.

Menggunakan jQuery-FontSpy.js

Untuk menggunakan pemalam, masukkan fail JavaScript pemalam dalam projek anda dan mulakannya pada elemen sasaran. Anda boleh menentukan kelas tersuai untuk ditambah atau dialih keluar berdasarkan status pemuatan fon. Contohnya:

<span class="bannerTextChecked">FontAwesome Icon</span>
$(document).ready(function() {
    $('.bannerTextChecked').fontSpy({
        onLoad: 'hideMe',
        onFail: 'fontFail anotherClass'
    });
});

CSS untuk FOUC Removal

Untuk mengalih keluar Flash Kandungan Tidak Gaya (FOUC), gunakan peraturan CSS yang sesuai:

.hideMe {
    visibility: hidden !important;
}

.fontFail {
    visibility: visible !important;
    /* fallback font */
    /* apply necessary styling to avoid layout issues with the fallback font */
}

Kesimpulan

Dengan menggunakan fon teknik pengesanan beban, anda boleh meningkatkan pengalaman pengguna dengan memastikan fon dipaparkan hanya apabila ia dimuatkan sepenuhnya. jQuery-FontSpy.js menjadikan proses ini mudah, membolehkan anda menambah penggayaan berdasarkan status pemuatan fon tertentu.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengesan Apabila Fon Telah Dimuat Menggunakan @font-face untuk Mengelakkan FOUC?. 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