aboutsummaryrefslogtreecommitdiff
path: root/files/fr/glossary/speculative_parsing/index.md
diff options
context:
space:
mode:
Diffstat (limited to 'files/fr/glossary/speculative_parsing/index.md')
-rw-r--r--files/fr/glossary/speculative_parsing/index.md32
1 files changed, 14 insertions, 18 deletions
diff --git a/files/fr/glossary/speculative_parsing/index.md b/files/fr/glossary/speculative_parsing/index.md
index 786233cd03..3b8a71abf6 100644
--- a/files/fr/glossary/speculative_parsing/index.md
+++ b/files/fr/glossary/speculative_parsing/index.md
@@ -11,27 +11,23 @@ tags:
translation_of: Glossary/speculative_parsing
original_slug: Web/HTML/Optimizing_your_pages_for_speculative_parsing
---
-<p>Traditionnellement dans les navigateurs, l'analyseur HTML a été exécuté sur le fil principal et a été bloqué après une balise <code>&lt;/script&gt;</code> jusqu'à ce que le script ait été extrait du réseau et exécuté. L'analyseur HTML dans Firefox 4 et versions ultérieures prend en charge l'analyse spéculative sur le fil principal. Il analyse "en avant" pendant que les scripts sont téléchargés et exécutés. Comme dans Firefox 3.5 et 3.6, l'analyseur HTML lance des chargements spéculatifs pour les scripts, les feuilles de style et les images qu'il trouve à l'avance dans le flux. Toutefois, dans Firefox 4 et versions ultérieures, l'analyseur HTML exécute également l'algorithme de construction de l'arborescence HTML de manière spéculative. L'avantage est que lorsqu'une spéculation réussit, il n'est pas nécessaire d'analyser la partie du fichier entrant qui a déjà été analysée pour les scripts, les feuilles de style et les images. L'inconvénient est qu'il y a plus de travail perdu quand la spéculation échoue.<br>
- <br>
- Ce document vous aide à éviter le genre de choses qui font échouer la spéculation et ralentir le chargement de votre page.</p>
+Traditionnellement dans les navigateurs, l'analyseur HTML a été exécuté sur le fil principal et a été bloqué après une balise `</script>` jusqu'à ce que le script ait été extrait du réseau et exécuté. L'analyseur HTML dans Firefox 4 et versions ultérieures prend en charge l'analyse spéculative sur le fil principal. Il analyse "en avant" pendant que les scripts sont téléchargés et exécutés. Comme dans Firefox 3.5 et 3.6, l'analyseur HTML lance des chargements spéculatifs pour les scripts, les feuilles de style et les images qu'il trouve à l'avance dans le flux. Toutefois, dans Firefox 4 et versions ultérieures, l'analyseur HTML exécute également l'algorithme de construction de l'arborescence HTML de manière spéculative. L'avantage est que lorsqu'une spéculation réussit, il n'est pas nécessaire d'analyser la partie du fichier entrant qui a déjà été analysée pour les scripts, les feuilles de style et les images. L'inconvénient est qu'il y a plus de travail perdu quand la spéculation échoue.
-<h2 id="Réussir_les_chargements_spéculatifs">Réussir les chargements spéculatifs</h2>
+Ce document vous aide à éviter le genre de choses qui font échouer la spéculation et ralentir le chargement de votre page.
-<p>Il n'y a qu'une seule règle pour réussir les chargements spéculatifs de scripts liés, de feuilles de style et d'images :</p>
+## Réussir les chargements spéculatifs
-<ul>
- <li>Si vous utilisez un élément <code>&lt;base&gt;</code> pour remplacer l'URI de base de votre page, placez l'élément dans la partie non-scriptée du document. Ne l'ajoutez pas par <code>document.write()</code> ou <code>document.createElement()</code>.</li>
-</ul>
+Il n'y a qu'une seule règle pour réussir les chargements spéculatifs de scripts liés, de feuilles de style et d'images :
-<h2 id="Éviter_de_perdre_la_sortie_du_constructeur_d'arborescence">Éviter de perdre la sortie du constructeur d'arborescence</h2>
+- Si vous utilisez un élément `<base>` pour remplacer l'URI de base de votre page, placez l'élément dans la partie non-scriptée du document. Ne l'ajoutez pas par `document.write()` ou `document.createElement()`.
-<p>L'analyse spéculative du constructeur d'arborescence échoue quand <code>document.write()</code> change l'état du constructeur d'arborescence, au point que l'état spéculatif après la balise <code>&lt;/script&gt;</code> ne tient plus lorsque tout le contenu inséré par <code>document.write()</code> a été analysé. Cependant, seules les utilisations inhabituelles de <code>document.write()</code> entraînent ce genre de problèmes. Ici, les choses à éviter :</p>
+## Éviter de perdre la sortie du constructeur d'arborescence
-<ul>
- <li>n'écrivez pas d'arborescences déséquilibrées. <code>&lt;script&gt;document.write("&lt;div&gt;");&lt;/script&gt;</code> est mauvais. <code>&lt;script&gt;document.write("&lt;div&gt;&lt;/div&gt;");&lt;/script&gt;</code> est valide.</li>
- <li>n'écrivez pas de balisage infini. <code>&lt;script&gt;document.write("&lt;div&gt;&lt;/div");&lt;/script&gt;</code> est mauvais.</li>
- <li>ne terminez pas votre écriture avec un retour chariot . <code>&lt;script&gt;document.write("Hello World!\r");&lt;/script&gt;</code> est mauvais. <code>&lt;script&gt;document.write("Hello World!\n");&lt;/script&gt;</code> est valide.</li>
- <li>notez que l'écriture de balises équilibrées peut entraîner la déduction d'autres balises de telle manière que l'écriture est finalement déséquilibrée. Par exemple, <code>&lt;script&gt;document.write("&lt;div&gt;&lt;/div&gt;");&lt;/script&gt;</code> à l'intérieur de l'élément d'en-tête sera interprété comme <code>&lt;script&gt;document.write("&lt;/head&gt;&lt;body&gt;&lt;div&gt;&lt;/div&gt;");&lt;/script&gt;</code> qui est déséquilibré.</li>
- <li>ne pas formater une partie de tableau. <code>&lt;table&gt;&lt;script&gt;document.write("&lt;tr&gt;&lt;td&gt;Hello World!&lt;/td&gt;&lt;/tr&gt;");&lt;/script&gt;&lt;/table&gt;</code> est mauvais. Par contre, <code>&lt;script&gt;document.write("</code><code>&lt;table&gt;</code><code>&lt;tr&gt;&lt;td&gt;Hello World!&lt;/td&gt;&lt;/tr&gt;</code><code>&lt;/table&gt;</code><code>");&lt;/script&gt;</code> est valide.</li>
- <li>À FAIRE : document.write inclus dans d'autres éléments de formatage.</li>
-</ul>
+L'analyse spéculative du constructeur d'arborescence échoue quand `document.write()` change l'état du constructeur d'arborescence, au point que l'état spéculatif après la balise `</script>` ne tient plus lorsque tout le contenu inséré par `document.write()` a été analysé. Cependant, seules les utilisations inhabituelles de `document.write()` entraînent ce genre de problèmes. Ici, les choses à éviter :
+
+- n'écrivez pas d'arborescences déséquilibrées. `<script>document.write("<div>");</script>` est mauvais. `<script>document.write("<div></div>");</script>` est valide.
+- n'écrivez pas de balisage infini. `<script>document.write("<div></div");</script>` est mauvais.
+- ne terminez pas votre écriture avec un retour chariot . `<script>document.write("Hello World!\r");</script>` est mauvais. `<script>document.write("Hello World!\n");</script>` est valide.
+- notez que l'écriture de balises équilibrées peut entraîner la déduction d'autres balises de telle manière que l'écriture est finalement déséquilibrée. Par exemple, `<script>document.write("<div></div>");</script>` à l'intérieur de l'élément d'en-tête sera interprété comme `<script>document.write("</head><body><div></div>");</script>` qui est déséquilibré.
+- ne pas formater une partie de tableau. `<table><script>document.write("<tr><td>Hello World!</td></tr>");</script></table>` est mauvais. Par contre, ` <script>document.write("``<table>``<tr><td>Hello World!</td></tr>``</table>``");</script> ` est valide.
+- À FAIRE : document.write inclus dans d'autres éléments de formatage.