Éditeur en direct HTML/CSS/JS
Un mini bac à sable dans le navigateur — écrivez du HTML, du CSS et du JS et voyez le résultat se mettre à jour en direct dans un aperçu en bac à sable, sans compte ni étape de build.
1 205 vues
Comment ça fonctionne
Tapez dans les onglets HTML, CSS et JS et le panneau d'aperçu se met à jour au fur et à mesure, en rendant le résultat combiné dans un iframe en bac à sable (sandbox). L'attribut sandbox est réglé sur allow-scripts sans allow-same-origin, et c'est précisément ce qui assure la sécurité : les scripts exécutés dans l'aperçu tournent dans une origine distincte et opaque, si bien qu'ils ne peuvent lire ni les cookies, ni le stockage local, ni le DOM de cette page — et cette page ne peut pas non plus accéder à l'iframe. Cette isolation est une frontière de sécurité imposée par le navigateur, pas un simple cadre visuel — c'est le même mécanisme que les sites utilisent pour intégrer en toute sécurité du contenu tiers non fiable (publicités, widgets, extraits soumis par des utilisateurs) sans avoir à faire confiance au code qu'il contient.
L'édition elle-même est délibérément sobre : trois zones de texte (textareas), sans coloration syntaxique, sans autocomplétion. Ce n'est pas une fonctionnalité manquante mais un compromis assumé — une véritable expérience d'édition de code (reconnaissance des mots-clés, appariement des parenthèses, autocomplétion des balises) suppose de charger une bibliothèque d'éditeur tierce conséquente, ce qui alourdit la page et impose un délai de chargement avant même de pouvoir taper un seul caractère. Cet outil optimise l'inverse : ouvrir la page et commencer à écrire immédiatement, sans aucune dépendance ni étape de build.
Chaque frappe dans l'un des trois onglets déclenche une reconstruction : le HTML actuel, le CSS actuel enveloppé dans une balise <style> et le JS actuel enveloppé dans une balise <script> sont assemblés en un seul document et écrits dans l'iframe. Il n'y a ni diff ni patch incrémental — tout le document d'aperçu est simplement remplacé, ce qui est assez rapide à cette échelle pour paraître instantané tout en gardant l'implémentation simple.
Bon à savoir
Comme tout — édition et rendu — se passe dans votre navigateur, il n'y a aucun aller-retour serveur et aucun compte n'est nécessaire. C'est bien adapté pour tester rapidement une astuce CSS, isoler un bug JavaScript d'une base de code plus vaste avant de le signaler, ou prototyper un petit composant avant de copier le résultat fonctionnel dans un vrai projet. Rien de ce que vous tapez n'est jamais sauvegardé automatiquement quelque part — traitez donc cet outil comme un brouillon : copiez tout ce que vous voulez conserver avant de fermer l'onglet.
Questions fréquentes
Mon code est-il envoyé quelque part ?
Non — tout s'exécute localement dans votre navigateur. L'aperçu est rendu dans un iframe en bac à sable sur cette même page ; rien n'est téléversé ni enregistré sur un serveur.
Pourquoi pas de coloration syntaxique ?
Ajouter un véritable éditeur de code (coloration syntaxique, autocomplétion) implique de charger une lourde bibliothèque d'éditeur tierce. Cet outil reste volontairement léger — de simples zones de texte, un chargement instantané, aucune dépendance, et rien à télécharger avant de pouvoir commencer à écrire.
Est-il sûr d'exécuter du code non fiable dans l'aperçu ?
L'iframe d'aperçu utilise sandbox="allow-scripts" sans allow-same-origin, de sorte que les scripts qu'il contient ne peuvent lire ni les cookies, ni le stockage local, ni quoi que ce soit d'autre provenant de cette page — il est isolé de la même manière qu'un contenu intégré non fiable le serait. C'est une véritable frontière imposée par le navigateur, pas cosmétique.
Mon JavaScript dans l'aperçu peut-il affecter le reste de ce site ?
Non — le navigateur traite l'iframe en bac à sable comme une origine distincte et opaque. Les scripts qu'il contient sont confinés au document propre de cet iframe ; ils n'ont aucun accès aux variables, requêtes réseau, cookies ou stockage de cette page, quoi que le script essaie de faire.
L'aperçu se met-il à jour à chaque frappe ?
Oui — le contenu de l'iframe est reconstruit à partir des onglets HTML, CSS et JS actuels en direct, au fur et à mesure que vous tapez, de sorte que vous voyez l'effet d'un changement (une nouvelle règle CSS, une fonction modifiée) immédiatement, sans cliquer sur un bouton « exécuter » séparé ni attendre une étape de build.
Outils similaires
Signaler un problème
Éditeur en direct HTML/CSS/JS
Commentaires
Pas encore de commentaires — soyez le premier à en écrire un !