web-dev-qa-db-fra.com

Est-ce que la propriété "Content-Visibilité" interfère-t-elle un comportement de chargement des scripts?

Le nouvelle propriété CSScontent-visibility La propriété ressemble à un bon outil pour augmenter la vitesse de chargement de la page.

Je veux l'ajouter à mon page de page de page:

<footer style="content-visibility: auto;">
  (...)
</footer>

Comme il peut être peint plus tard à l'écran (il apparaît sous le dossier pour tous les pages de mon site).

Cependant, le pied de page de mon page a de nombreux JS Libs qui sont chargés là-bas via <script> Tags à l'intérieur du pied de page .

Certains scripts sont chargés impatients, certains sont différés et d'autres sont chargés de manière asynchrone. (Ouais, beaucoup de scripts, malheureusement).

Donc, ma question est:

le content-visibility La propriété interfère avec le chargement de script de quelque manière que ce soit?

ou les scripts vont-ils charger de la même manière quelle que soit la propriété CSS?

Demander ici comme c'est nouveau et a l'air une sorte de "magie" pour moi et je n'ai pas trouvé de documentation connexe. Merci d'avance pour toute idée de cette information.

9
Mauricio Moraes

Lorsque vous envisagez la réponse d'Alohci comme incomplète, je vais ajouter mes 2 cents, mais surtout je ne peux que reformuler que ce qui a déjà été dit.

Je n'ai pas chrome 85, donc je ne peux pas le tester. Mais après avoir lu les spécifications this et ceci Je pense que:

  1. ... Mais si c'était un script qui ajoute un gestionnaire à un élément, cela peut être défectueux, comme $(selector).click(...)?

    Testez-le juste! Essayez de cliquer sur un élément avec content-visibility: auto Avec code JS alors qu'il est toujours invisible en raison d'être hors écran. Je suis sûr que le gestionnaire fonctionnera. Il n'y a rien dans les spécifications de ces questions.

  2. Sera le content-visibility Propriété interfère avec le chargement de script de quelque manière que ce soit?

    Non. Il n'y a pas un mot sur le chargement des ressources dans les spécifications. Mais encore - testez-le! Regardez le Onglet Réseau. La séquence de charge du script ne devrait pas changer.

  3. Donc, cela n'affectera pas les scripts qui sont d'une utilisation générale, comme bootstrap et tel, mais [quoi] si C'était un script qui ...

    ... un script qui ...

    • en quelque sorte dépend de la taille de l'élément avec content-visibility: auto ou cela des descendants (Alohci l'a déjà signalé)
    • en quelque sorte dépend de innerText
    • liée à certaines fonctionnalités d'accessibilité (éventuellement ... pas vraiment familier avec ces)
    • et dans d'autres cas (lire le SPEC si vous êtes intéressé par les détails)
    • et il peut y avoir d'autres cas non mentionnés dans les spécifications car la fonctionnalité est toujours à la petite enfance. (Et le content-visibility SPEC est en fait un brouillon)

    Oui, il peut casser

    Vous pouvez même imager un script qui lit les propriétés CSS, trouve content-visibility et jette comme il est inconnu d'y être inconnu ... ou même jette juste parce que c'est l'auteur déteste ceux qui utilisent content-visibility :)

    Mais je pense que dans votre cas, les chances sont infinitésimales, comme je suppose que les scripts que vous parlez sont intéressés par votre footer.

Quoi qu'il en soit, toute modification doit être testée (idéalement). Mais aussi vous ne pouvez jamais être sûr qu'il n'y a pas de bugs. Alors, essayez juste juste-le, si cela en vaut la peine, et voyez comment ça se passe.

3
x00