<noscript><link ...> du css après un <link rel="preload"...

  • Auteur de la discussion Auteur de la discussion Bocar
  • Date de début Date de début
WRInaute discret
Bonjour.

À quoi sert et est-il intéressant de mettre un <noscript><link href="/document.css></noscript> du css à la suite d'un <link rel="preload" href="/document.css> ?
Code:
<link rel="preload" href="/document.css><noscript><link rel="stylesheet" href="/document.css"></noscript>

Merci.
 
WRInaute passionné
noscript c'est pour les gens qui ont désactivé javascript, donc c'est inutile, car de nos jours désactiver javascript signifie ne plus pouvoir utiliser aucun site correctement donc que ces gens se débrouillent...
 
WRInaute discret
La question, c'est plutôt, d'où vous sortez ce code?

Je comprends que dans certains cas, éventuellement, on peut vouloir charger une feuille de style particulière lorsque JavaScript est désactivé, mais là, la feuille document.css est déjà chargée précédemment, alors, quoi qu'est-ce que ?
 
WRInaute impliqué
Je comprends que dans certains cas, éventuellement, on peut vouloir charger une feuille de style particulière lorsque JavaScript est désactivé, mais là, la feuille document.css est déjà chargée précédemment, alors, quoi qu'est-ce que ?

Elle est préchargée mais pas insérée dans le DOM.
Si le but est vraiment de n'utiliser cette CSS que pour les navigateurs sans Javascript, c'est une mauvaise technique puisque plus de 99% des utilisateurs la chargera pour rien. Mais si elle est insérée dans un javascript, alors là ça se comprend :

- préchargement de la CSS parce qu'on va en avoir besoin plus tard
- insertion en <noscript> parce que c'est une bonne pratique de faire en sorte que ça fonctionne au mieux même en cas de problème (JS pas chargé car problème de réseau, ou qui se fait bloquer par un anti-pub via une nouvelle regex trop large, introduction d'un bug JS qui stoppe l'exécution, rick38 qui passe à Lynx...)
- et (mais ça n'est pas dans le premier message), insertion de la CSS via JS, peut être uniquement en fonction d'une certaine action (arrivé à un certain point de la page).

Dans ce cas ce sera très rapide puisque la CSS sera déjà chargée, et lors du chargement initial de la page, le navigateur n'aura pas eu à attendre la CSS document.css pour afficher la page.
Mais bon, quand on en arrive là, c'est probablement parce qu'on génère des CSS très lourdes en utilisant mal ses outils.
 
WRInaute discret
Ma faute, je n'avais pas fait attention au "preload", n'ayant pas eu l'occasion de m'en servir avec les feuilles de styles.
 
Discussions similaires
Haut