A place to cache linked articles (think custom and personal wayback machine)
Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

vor 4 Jahren
vor 4 Jahren
vor 4 Jahren
vor 4 Jahren
vor 4 Jahren
vor 4 Jahren
vor 4 Jahren
vor 4 Jahren
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220
  1. <!doctype html><!-- This is a valid HTML5 document. -->
  2. <!-- Screen readers, SEO, extensions and so on. -->
  3. <html lang="fr">
  4. <!-- Has to be within the first 1024 bytes, hence before the <title>
  5. See: https://www.w3.org/TR/2012/CR-html5-20121217/document-metadata.html#charset -->
  6. <meta charset="utf-8">
  7. <!-- Why no `X-UA-Compatible` meta: https://stackoverflow.com/a/6771584 -->
  8. <!-- The viewport meta is quite crowded and we are responsible for that.
  9. See: https://codepen.io/tigt/post/meta-viewport-for-2015 -->
  10. <meta name="viewport" content="width=device-width,initial-scale=1">
  11. <!-- Required to make a valid HTML5 document. -->
  12. <title>Transmission de COVID-19 par aérosol, les implications pour la santé publique (archive) — David Larlet</title>
  13. <meta name="description" content="Publication mise en cache pour en conserver une trace.">
  14. <!-- That good ol' feed, subscribe :). -->
  15. <link rel="alternate" type="application/atom+xml" title="Feed" href="/david/log/">
  16. <!-- Generated from https://realfavicongenerator.net/ such a mess. -->
  17. <link rel="apple-touch-icon" sizes="180x180" href="/static/david/icons2/apple-touch-icon.png">
  18. <link rel="icon" type="image/png" sizes="32x32" href="/static/david/icons2/favicon-32x32.png">
  19. <link rel="icon" type="image/png" sizes="16x16" href="/static/david/icons2/favicon-16x16.png">
  20. <link rel="manifest" href="/static/david/icons2/site.webmanifest">
  21. <link rel="mask-icon" href="/static/david/icons2/safari-pinned-tab.svg" color="#07486c">
  22. <link rel="shortcut icon" href="/static/david/icons2/favicon.ico">
  23. <meta name="msapplication-TileColor" content="#f0f0ea">
  24. <meta name="msapplication-config" content="/static/david/icons2/browserconfig.xml">
  25. <meta name="theme-color" content="#f0f0ea">
  26. <!-- Documented, feel free to shoot an email. -->
  27. <link rel="stylesheet" href="/static/david/css/style_2020-06-19.css">
  28. <!-- See https://www.zachleat.com/web/comprehensive-webfonts/ for the trade-off. -->
  29. <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
  30. <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
  31. <link rel="preload" href="/static/david/css/fonts/triplicate_t4_poly_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: light), (prefers-color-scheme: no-preference)" crossorigin>
  32. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_regular.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  33. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_bold.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  34. <link rel="preload" href="/static/david/css/fonts/triplicate_t3_italic.woff2" as="font" type="font/woff2" media="(prefers-color-scheme: dark)" crossorigin>
  35. <script type="text/javascript">
  36. function toggleTheme(themeName) {
  37. document.documentElement.classList.toggle(
  38. 'forced-dark',
  39. themeName === 'dark'
  40. )
  41. document.documentElement.classList.toggle(
  42. 'forced-light',
  43. themeName === 'light'
  44. )
  45. }
  46. const selectedTheme = localStorage.getItem('theme')
  47. if (selectedTheme !== 'undefined') {
  48. toggleTheme(selectedTheme)
  49. }
  50. </script>
  51. <meta name="robots" content="noindex, nofollow">
  52. <meta content="origin-when-cross-origin" name="referrer">
  53. <!-- Canonical URL for SEO purposes -->
  54. <link rel="canonical" href="https://www.lejournaldumedecin.com/actualite/transmission-de-covid-19-par-aerosol-les-implications-pour-la-sante-publique/article-opinion-47087.html">
  55. <body class="remarkdown h1-underline h2-underline h3-underline hr-center ul-star pre-tick">
  56. <article>
  57. <header>
  58. <h1>Transmission de COVID-19 par aérosol, les implications pour la santé publique</h1>
  59. </header>
  60. <nav>
  61. <p class="center">
  62. <a href="/david/" title="Aller à l’accueil">🏠</a> •
  63. <a href="https://www.lejournaldumedecin.com/actualite/transmission-de-covid-19-par-aerosol-les-implications-pour-la-sante-publique/article-opinion-47087.html" title="Lien vers le contenu original">Source originale</a>
  64. </p>
  65. </nav>
  66. <hr>
  67. <main>
  68. <p>Nous sommes un groupe pluridisciplinaire et international d'experts qui concluent que la négligence de la transmission du COVID 19 par aérosol est à l'origine de la différence entre les pays qui contrôlent ou ne contrôlent pas la propagation du nouveau coronavirus. La distanciation sociale de 1 m est largement insuffisante. Soyons adultes et acceptons la réalité du risque de transmission par aérosol, limitons toutes activités non essentielles, utilisons tous les moyens de protection de nos voies respiratoires, du FFP2 à l'humble châle, en attendant de développer les outils pour retourner à la pleine activité, à savoir une capacité de dépistage nucléique et sérologique massive de ce virus associé a un confinement des personnes infectées, et une capacité de production locale de masques de FFP2 pour toute la population.</p>
  69. <p>Quand une personne est infectée, sa toux, ses éternuements, mais aussi sa conversation ou ses chants vont produire un nuage de gouttelettes depuis sa bouche ou son nez.</p>
  70. <p>Les modes de contamination des maladies virales respiratoires peuvent alors être classés en trois catégories suivant la taille de ces gouttelettes :</p>
  71. <ul>
  72. <li>
  73. <p>Pour les grosses gouttelettes si vous êtes à faible distance (inférieure au fameux 1 m) elles peuvent être directement projetées sur vous (la personne saine).</p>
  74. </li>
  75. <li>
  76. <p>Ces mêmes gouttes peuvent tomber sur une surface et la contaminer. Si vous la touchez et portez les mains à votre visage le risque est fort d'être contaminé.</p>
  77. </li>
  78. <li>
  79. <p>Mais pour les gouttelettes de très petites tailles, elles sont susceptibles d'être aéroportées et de se propager sur des distances bien supérieures à 1 m et de produire ainsi un aérosol contaminant pour celui qui le respire.</p>
  80. </li>
  81. </ul>
  82. <p>Les recommandations données actuellement à la population pour ralentir l'épidémie sont exclusivement basée sur les deux premiers modes transmission du COVID-19 décrite ci-dessus et excluent la troisième possibilité.</p>
  83. <p>Qu'est-ce qu'un aérosol</p>
  84. <p>Un aérosol consiste en microgouttelettes qui restent en suspension dans l'air. En effet plus la goutte est petite plus la force de résistance de l'air est grande par rapport à son poids et plus la goutte tombe doucement, éventuellement à vitesse quasi nulle. De plus ces microparticules peuvent par évaporation d'eau diminuer en taille, ce qui leur permet de se maintenir presque indéfiniment en suspension.</p>
  85. <p>Le mouvement de gouttelettes de différentes tailles produites lors d'une conversation normale, ou d'une toux ou d'un éternuement, peuvent être visualisés par illumination laser comme montré dans la figure ci-dessous, adaptée d'un article publié par un des auteurs de cette tribune dans le Journal of Fluid mechanics en 2014. Dans cet article il est montré que le nuage d'aérosols peut se propager beaucoup plus loin que des gouttelettes isolées grâce aux interactions entre les gouttelettes et la phase gazeuse du nuage. Ainsi un éternuement peut envoyer des gouttelettes jusqu'à 6 mètres de distances.
  86. null © dr</p>
  87. <p>Une vidéo récente réalisée par des scientifiques japonais montre aussi très bien comment ces microgouttelettes peuvent rester en suspension dans l'air et voyager très loin, voir https://www.ccn.com/japan-scientists-find-new-transmission-route-of-coronavirus-in-breakthrough-study/</p>
  88. <p>Quand une personne est infectée, qu'elle soit symptomatique ou non, les microgouttelettes peuvent contenir du virus qui reste infectieux pendant longtemps (la stabilité du virus se mesure en heures), et elles sont donc capables d'infecter les personnes qui les respirent.</p>
  89. <p>Dans un air immobile, les plus petites particules vont atteindre, après émission, des distances de plusieurs mètres sur des temps de l'ordre de la minute mais les mouvements globaux (convection) de l'air sont susceptibles de les transporter sur des distances bien plus grandes en un temps très court et très inférieur à l'heure.</p>
  90. <pre><code>Nos mesures de distanciation sociale ne sont pas adéquates à la réalité du mode de transmission par aérosol de ce nouveau coronavirus
  91. </code></pre>
  92. <p>.</p>
  93. <p>L'importance et l'utilité des différents masques.</p>
  94. <p>Outre la détection des personnes infectées associé au confinement, la meilleure manière de prévenir la transmission par aérosol au niveau de l'individu est bien connue, l'utilisation de matériel de protection personnelle, en particulier les masques de types N95 ou FFP2 qui protègent efficacement contre la transmission par aérosol. Même si les masques chirurgicaux sont beaucoup moins efficaces contre les aérosols que les FFP2, mais ils sont néanmoins d'une efficacité scientifiquement démontrée, aussi bien pour limiter la transmission par des individus infectés que pour limiter la contagion des personnes non infectées.</p>
  95. <p>De fait, les villes et les pays qui ont le mieux contrôlé la propagation du virus sont Taiwan, Singapour et Hong Kong (malgré leur proximité à l'épicentre de la pandémie) suivi par la Chine et la Corée du Sud. Ils ont été capables d'aplatir la courbe et d'ainsi atténuer, puis contrôler la propagation du virus. Ces pays reconnaissent l'importance de minimiser tous les modes de transmission, y compris la transmission par gouttelettes et par aérosol, où le rôle d'un masque est déterminant pour la protection des l'individu.</p>
  96. <p>Les chiffres qui nous viennent de Chine démontrent l'importance de la transmission par aérosol et le rôle protecteur indispensable des masques, FFP2. En effet, plus de 3.000 personnes du corps médical ont été infectés à Wuhan cette année lors de la première vague de COVID-19 et toutes les images nous montrent le personnel avec de simples masques d'isolation (type chirurgical) et non des FFP2. Par contre, 42.000 professionnels de la santé ont été envoyés en renfort, mais équipés de FFP2 pour la seconde vague, et pas une seule infection n'a été déplorée parmi eux !</p>
  97. <p>Le port du masque par tous les citoyens.</p>
  98. <p>Dans les pays d'Asie, le port d'un masque chirurgical est le minimum requis pour les citoyens en public et l'efficacité de ces masques pour réduire la transmission des maladies respiratoires est largement démontrée. Il est donc particulièrement troublant d'entendre des autorités publiques en France et en Belgique répéter depuis le début de cette crise que les masques sont inutiles pour le public et qu'ils donneraient un faux sentiment de sécurité. Ces autorités publiques insistent que la transmission par aérosol ne serait pas un élément important pour le COVID-19, mais ces assertions sont sans fondement scientifique et nous éloignent des actions que nous pouvons tous prendre pour aplatir la courbe de progression du virus et juguler l'infection. Les masques devraient jouer un rôle clef pour nous permettre une sortie de crise.</p>
  99. <p>Ces propos semblent être motivés par la pénurie des masques FFP2 en particulier qui doivent bien sûr être réservés en priorité pour le personnel soignant et autre personnel de première ligne, ce que tout adulte comprend parfaitement, et il n'est donc pas nécessaire de cacher la réalité de la situation. Cela n'engendre que de la confusion et un sentiment d'impuissance dans le grand public. Au contraire, informer le public de la réalité de la situation lui permettrait de s'adapter du mieux qu'il peut au danger auquel nous faisons face.</p>
  100. <p>Alors que l'OMS continue dans sa recommandation absurde de dire que les masques ne sont pas nécessaires pour le grand public, la France persiste et signe dans le même sens, les CDC (Centers for Disease Control and Prevention) aux États-Unis reconsidèrent cette position : "Jusqu'à 25% des personnes infectées par le nouveau coronavirus peuvent ne pas présenter de symptômes", prévient M. Redfield, le directeur des CDC. L'agence avait déclaré à plusieurs reprises que les citoyens ordinaires n'ont pas besoin de porter de masques à moins qu'ils ne se sentent malades. Mais sachant que les personnes peuvent être infectées et contagieuses sans se sentir malades, M. Redfield a déclaré que ces conseils étaient "en train d'être revus de manière critique".</p>
  101. <pre><code>Les masques devraient jouer un rôle clef pour nous permettre une sortie de crise
  102. </code></pre>
  103. <p>Par contre, la position du gouvernement chinois, représentée par George Gao, le directeur général du Centre chinois de contrôle et de préventions des maladies, ne pourrait pas être plus claire: Ne pas porter de masque pour se protéger du coronavirus est une " grande erreur ".</p>
  104. <p>Le port d'un masque est obligatoire en public dans plusieurs pays d'Asie dans la situation actuelle, pays qui contrôlent le mieux la propagation du virus sur leur territoire. En Europe, la ville de Prague est la seule à avoir mandaté le port d'un masque ou d'une écharpe en public depuis le 18 mars, pourquoi ?</p>
  105. <p>La ville de Prague, un exemple à suivre.</p>
  106. <p>Petr Ludwig, avait réalisé une vidéo éducative sur l'importance de porter des masques, non pas comme protection pour soi-même, mais pour protéger les autres au cas où on serait contagieux sans le savoir. La vidéo cite une étude menée par des chercheurs de l'Université de Cambridge qui conclut que les masques chirurgicaux sont 3 fois plus efficaces que les masques faits maison, néanmoins ils recommandent les masques faits maison en dernier recours lorsque les masques chirurgicaux ne sont pas disponibles.</p>
  107. <p>Alors que la pénurie de masques fournis par le gouvernement tchèque se poursuivait, les hôpitaux ont utilisé les médias sociaux pour demander si les gens pouvaient coudre des masques pour eux. Lors d'une manifestation de soutien sans précédent, de nombreuses personnes ont commencé à fabriquer des masques, non seulement pour les hôpitaux mais pour tout le monde. L'effort était à la fois individuel et organisationnel - les théâtres, les organisations à but non lucratif, les petites entreprises et les usines qui produisent normalement des vêtements, du linge de maison et des accessoires ont réorienté leurs efforts vers la couture à temps plein. Les entreprises locales cousaient en vrac, approvisionnaient les hôpitaux, les résidences pour personnes âgées, la police ou les pompiers. Les masques ont été livrés aux hôpitaux ou à des amis et voisins qui les trouvaient souvent dans leurs boîtes aux lettres. Dans certaines régions, les gens ont créé des "arbres à masques" pour y mettre des masques supplémentaires à la disposition d'autres personnes.</p>
  108. <p>Bien sûr, les FFP2 mal portés et les masques chirurgicaux n'offrent pas une protection parfaite. Mais l'objectif affiché est "d'aplatir la courbe" et nous devons adopter toutes les mesures réduisant les contaminations, y compris les masques fait maison qui offrent une protection non négligeable quand on fait ses courses. Il faut arrêter de prétendre que les masques ne sont pas efficaces, même s'ils sont imparfaits ; le mieux ne doit pas être l'ennemi du bien.</p>
  109. <p>Au-delà de l'aplatissement nécessaire de la courbe, c'est la production en masse de masques aux normes FFP2 pour le public qui permettra le retour le plus rapide à une activité économique quasi normale.</p>
  110. <p>Les implications organisationnelles de la transmission par aérosol</p>
  111. <p>Les espaces confinés favorisent la transmission par aérosol et peuvent être le lieu d'épisodes de super-contagion, comme ce fut le cas dans des rassemblements évangéliques en France (Mulhouse) et en Corée du Sud (Daegu). En effet, le phénomène peut être exacerbé par un système de chauffage aérotherme ou de la climatisation, où l'air est remis en circulation à l'intérieur des locaux par souci d'économie de chauffage (ou de froid). Il est donc recommandé d'arrêter tout dispositif de ce type, qui contribue à faire circuler l'air ambiant. Par contre, l'aération massive et fréquente par l'air extérieur dans les locaux encore fréquentés par le public, les pharmacies, la poste, les petits magasins d'alimentation et les supermarchés, contribue par dilution à une réduction du nombre de particules infectieuses auxquelles le public est exposé.</p>
  112. <p>Les systèmes de chauffage aérotherme de nombreux bâtiments comprennent bien évidemment une admission d'air frais pour maintenir la qualité de l'air intérieur, mais ils n'ont été prévus que pour des polluants ordinaires et maintenir un taux d'humidité acceptable. Encore beaucoup plus grave, des systèmes aérothermes autonomes, essentiellement constitués d'un simple échangeur de chaleur muni d'un ventilateur sont largement utilisés pour le chauffage d'ateliers, garages, magasins alimentaires etc. Leurs utilisateurs (artisans, petits industriels, commerçants etc.) doivent prendre conscience du danger qu'ils présentent et de la nécessité d'une mise à l'arrêt immédiate.</p>
  113. <p>La distance de sécurité.</p>
  114. <p>Enfin, les travaux menés par des chercheurs au Japon, et par un signataire de cette tribune aux États-Unis montrent que la distance de sécurité de 1 m est largement insuffisante, la communication sur les " mesures barrières " laisse à penser à la population que cette distance est suffisante pour diminuer fortement le risque de contamination. Il n'en est rien en l'absence de masque et cette communication pousse la population à la confusion et à ne pas comprendre l'intérêt de la distanciation sociale !</p>
  115. <p>Les dangers de la continuation d'activités économiques non essentielles</p>
  116. <p>Les mesures de confinement en Italie, en Belgique et dans d'autres pays montrent leurs effets, avec un allongement du temps de doublement visible après un certain délai depuis l'implémentation du confinement. L'aplatissement de la courbe, conjugué avec un temps d'hospitalisation raccourci par les traitements disponibles, nous permettra peut-être d'éviter la saturation des hôpitaux, mais il nous faut éviter une deuxième vague de propagation dans la population qui reste active.</p>
  117. <pre><code>En l'absence de masques de type FFP2, le virus continuera à se propager dans nos institutions et nos entreprises
  118. </code></pre>
  119. <p>C'est pourquoi nous recommandons que toutes les organisations gouvernementales et privées suspendent toutes les activités qui ne sont pas absolument essentielles ou réalisées en télétravail, car en l'absence de masques de type FFP2, le virus continuera à se propager dans nos institutions et nos entreprises. Plus la taille de cette population est grande, plus la deuxième vague sera grande, et plus grand sera le risque d'engorgement de nos hôpitaux.</p>
  120. <p>Nous avons plaidé pour le respect du principe de réalité, pour l'application des mesures nécessaires de santé publique et du principe de précaution en médecine, qui nous enjoignent d'agir en nous protégeant par tous les moyens possible de tous les modes possible de transmission de COVID-19. Au lieu de nous couvrir les yeux pour ne pas voir cette réalité, considérée à tort comme anxiogène, prenons notre destin en main en nous couvrant la bouche et le nez aussi efficacement que possible.</p>
  121. <p>En résumé, soyons adultes et acceptons la réalité du risque de transmission par aérosol, limitons toutes activités non essentielles, utilisons tous les moyens de protection de nos voies respiratoires, du FFP2 à l'humble châle, en attendant de développer les outils pour retourner à la pleine activité, à savoir une capacité de dépistage nucléique et sérologique massive de ce virus associé a un confinement des personnes infectées, et une capacité de production locale de masques de FFP2 pour toute la population.</p>
  122. <p>Signataires :</p>
  123. <p>Giovanna Borsellino, M.D., Ph.D., Neuroimmunology Unit, Santa Lucia Foundation IRCCS, Rome, Italie.</p>
  124. <p>Lydia Bourouiba, Ph.D., Associate Professor, directrice du laboratoire " Fluid Dynamics of Disease Transmission Laboratory " au MIT (Massachussets Institute of Technology)</p>
  125. <p>Etienne Decroly, Docteur habilité, Directeur de recherche CNRS, Laboratoire AFMB, Membre du conseil scientifique de la société française de virologie.</p>
  126. <p>Nathanael Goldman, médecin pédiatre, MSc Public Health, MSc Clinical Trials (LSHTM).</p>
  127. <p>Philippe Koch, M.D., Ph.D., ophtalmologue, Professeur à l'Université Orsay-Paris Sud.</p>
  128. <p>Bertrand Rowe, docteur ès sciences, Directeur de Recherche CNRS retraité, consultant, lauréat du prix Descartes 2000 de la recherche européenne.</p>
  129. <p>Marc Wathelet, Ph.D. (docteur en sciences) virologiste, spécialiste des coronavirus.</p>
  130. <p>Yang Zhao, Ph.D., Assistant Professor, Department of Agricultural and Biological Engineering, Mississippi State University</p>
  131. <p>Nora Zekhnini, Docteur en Médecine, Médecin Généraliste</p>
  132. </main>
  133. </article>
  134. <hr>
  135. <footer>
  136. <p>
  137. <a href="/david/" title="Aller à l’accueil">🏠</a> •
  138. <a href="/david/log/" title="Accès au flux RSS">🤖</a> •
  139. <a href="http://larlet.com" title="Go to my English profile" data-instant>🇨🇦</a> •
  140. <a href="mailto:david%40larlet.fr" title="Envoyer un courriel">📮</a> •
  141. <abbr title="Hébergeur : Alwaysdata, 62 rue Tiquetonne 75002 Paris, +33184162340">🧚</abbr>
  142. </p>
  143. <template id="theme-selector">
  144. <form>
  145. <fieldset>
  146. <legend>Thème</legend>
  147. <label>
  148. <input type="radio" value="auto" name="chosen-color-scheme" checked> Auto
  149. </label>
  150. <label>
  151. <input type="radio" value="dark" name="chosen-color-scheme"> Foncé
  152. </label>
  153. <label>
  154. <input type="radio" value="light" name="chosen-color-scheme"> Clair
  155. </label>
  156. </fieldset>
  157. </form>
  158. </template>
  159. </footer>
  160. <script type="text/javascript">
  161. function loadThemeForm(templateName) {
  162. const themeSelectorTemplate = document.querySelector(templateName)
  163. const form = themeSelectorTemplate.content.firstElementChild
  164. themeSelectorTemplate.replaceWith(form)
  165. form.addEventListener('change', (e) => {
  166. const chosenColorScheme = e.target.value
  167. localStorage.setItem('theme', chosenColorScheme)
  168. toggleTheme(chosenColorScheme)
  169. })
  170. const selectedTheme = localStorage.getItem('theme')
  171. if (selectedTheme && selectedTheme !== 'undefined') {
  172. form.querySelector(`[value="${selectedTheme}"]`).checked = true
  173. }
  174. }
  175. const prefersColorSchemeDark = '(prefers-color-scheme: dark)'
  176. window.addEventListener('load', () => {
  177. let hasDarkRules = false
  178. for (const styleSheet of Array.from(document.styleSheets)) {
  179. let mediaRules = []
  180. for (const cssRule of styleSheet.cssRules) {
  181. if (cssRule.type !== CSSRule.MEDIA_RULE) {
  182. continue
  183. }
  184. // WARNING: Safari does not have/supports `conditionText`.
  185. if (cssRule.conditionText) {
  186. if (cssRule.conditionText !== prefersColorSchemeDark) {
  187. continue
  188. }
  189. } else {
  190. if (cssRule.cssText.startsWith(prefersColorSchemeDark)) {
  191. continue
  192. }
  193. }
  194. mediaRules = mediaRules.concat(Array.from(cssRule.cssRules))
  195. }
  196. // WARNING: do not try to insert a Rule to a styleSheet you are
  197. // currently iterating on, otherwise the browser will be stuck
  198. // in a infinite loop…
  199. for (const mediaRule of mediaRules) {
  200. styleSheet.insertRule(mediaRule.cssText)
  201. hasDarkRules = true
  202. }
  203. }
  204. if (hasDarkRules) {
  205. loadThemeForm('#theme-selector')
  206. }
  207. })
  208. </script>
  209. </body>
  210. </html>