A guide to asynchronously load Google Fonts in Gatsby using gatsby-plugin-web-font-loader
Google fonts not loaded in generated static Nuxt app
Benjamin Looi / May 16, 2021
So, I've found out that my static Nuxt websites deployed on Netlify are actually not using the fonts that I've specified. But the fonts are working during development.
/* assets/css/main.scss */
@import url("https://fonts.googleapis.com/css2?family=Archivo:wght@400;800&display=swap");
/* ... */
// nuxt.config.js
// ...
css: [
// https://eduardoboucas.github.io/include-media/
// 'include-media/dist/_include-media.scss',
// Global custom scss
'@/assets/css/main.scss',
],
// ...
Moving the @import css into a Top level vue component doesn't solve the issue as well.
// pages/index.vue
<style lang="scss" scoped>
@import url("https://fonts.googleapis.com/css?family=Playfair+Display:400,700,900&display=swap");
/* ... */
</style>
Hypothesis 1
Tailwindcss is purging the @import css
Solution?
So I tried disabling TailwindCss purging
// tailwind.config.js
module.exports = {
purge: {
enabled: false,
},
// ...
}
But it didn't work, the font is still not usable on the generated static site.
Final Solution
include the font as a stylesheet link in the head html instead of using @import css.
// nuxt.config.js
export default {
// ...
head: {
// ...
link: [
// ...
{
rel: "stylesheet",
href:
"https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@300;400;500;600;700&display=swap",
},
],
},
// ...
}Thanks for reading! 😁Comments
Related Posts
This article describes how to upgrade Gatsby starter blog (or any other gatsby starter template)
TailwindCSS v4’s new zero-config setup breaks AI coding agents trained on older versions. This highlights the gap between fast-evolving web frameworks and slower AI updates. Developers should rely on official docs until AI catches up.
