Wireframe

Le mode wireframe est un outil de débogage visuel intégré à flexocss. Il met en évidence la structure de votre grille avec des contours colorés, des arrière-plans et des étiquettes d'information pour repérer les problèmes de layout en un coup d'œil.

Activation

Ajoutez id="wireframe" à votre balise <body> pour activer le mode wireframe :

HTML
<body id="wireframe">
  ...
</body>

Le mode wireframe n'est disponible que lorsque $env est défini sur 'dev' (par défaut). En production, il est entièrement exclu.

Modes d'affichage

Le wireframe supporte plusieurs modes d'affichage combinables via des classes sur la balise body :

Mode outline (par défaut)

Avec seulement id="wireframe", chaque élément de grille reçoit un contour coloré :

HTML
<body id="wireframe">
  <div class="container">
    <div class="row">
      <div class="fl-box fl-8">...</div>
      <div class="fl-box fl-8">...</div>
    </div>
  </div>
</body>
  • .container — contour sombre (#1f2640)
  • .row — contour violet (#aa41c8)
  • .fl-box — contour bleu (#3f4b80) avec fond clair

Exemple en direct

.fl-box .fl-8
.fl-box .fl-8
.fl-box .fl-5
.fl-box .fl-6
.fl-box .fl-5

Mode fill

Ajoutez class="fill" pour remplacer les contours par des couleurs de fond pleines :

HTML
<body id="wireframe" class="fill">
  ...
</body>

Chaque niveau d'imbrication a une couleur distincte :

  • .container — fond sombre (#1f2640)
  • .row — fond violet (#aa41c8)
  • .fl-box — fond bleu (#7d96ff)

Exemple en direct

.fl-box .fl-8
.fl-box .fl-8
.fl-box .fl-5
.fl-box .fl-6
.fl-box .fl-5

Mode bordure

Ajoutez class="border-{n}" (1 à 5) pour ajouter des bordures visibles par-dessus le mode fill. Utile pour voir les limites exactes entre éléments adjacents.

HTML
<body id="wireframe" class="fill border-2">
  ...
</body>

Exemple en direct

.fl-box .fl-8
.fl-box .fl-8
.fl-box .fl-5
.fl-box .fl-6
.fl-box .fl-5

Mode info

Ajoutez class="info" pour afficher des étiquettes de breakpoint et de taille sur chaque colonne :

HTML
<body id="wireframe" class="fill border-1 info">
  ...
</body>

Chaque .fl-box affiche une étiquette comme *sm 8/16 indiquant le breakpoint actuel et la taille de la colonne. Les étiquettes se mettent à jour automatiquement lorsque le viewport change.

Exemple en direct

*sm 8/16 .fl-box .fl-8
*sm 8/16 .fl-box .fl-8
*sm 5/16 .fl-box .fl-5
*sm 6/16 .fl-box .fl-6
*sm 5/16 .fl-box .fl-5

Combiner les modes

Les modes peuvent être combinés librement. Voici les combinaisons les plus courantes :

HTML
<!-- Outline only -->
<body id="wireframe">

<!-- Filled backgrounds -->
<body id="wireframe" class="fill">

<!-- Filled + 2px borders -->
<body id="wireframe" class="fill border-2">

<!-- Full debug: fill + borders + info labels -->
<body id="wireframe" class="fill border-1 info">

Exemple scaffold

Voici comment le mode wireframe se présente appliqué à une structure de page complète : navigation, hero, features en trois colonnes, contenu en deux colonnes et footer.

logo
nav links
cta
.fl-16 — hero
.fl-sm-16 .fl-lg-5
.fl-sm-16 .fl-lg-5
.fl-sm-16 .fl-lg-6
.fl-sm-16 .fl-lg-10
.fl-sm-16 .fl-lg-6

Contrôle de l'environnement

Le module wireframe est compilé conditionnellement selon la variable $env :

SCSS
// Wireframe enabled (default)
@use "@daveaki/flexocss/scss/config" with ($env: 'dev');

// Wireframe disabled for production
@use "@daveaki/flexocss/scss/config" with ($env: 'prod');

Lorsque $env est 'prod', tout le CSS wireframe est exclu de la sortie, gardant votre bundle de production propre.

Personnalisation

Toutes les couleurs et styles du wireframe sont configurables via des variables SCSS :

Variable Défaut Rôle
$wireframeOutlineContainer#1f2640Couleur contour container
$wireframeOutlineRow#aa41c8Couleur contour row
$wireframeOutlineBox#3f4b80Couleur contour box
$wireframeBgColorContainer#1f2640Couleur remplissage container
$wireframeBgColorRow#aa41c8Couleur remplissage row
$wireframeBgColorBox#7d96ffCouleur remplissage box
$wireframeBgColorInfo#1f2640Fond étiquette info
$wireframeColorInfo#e9eeffCouleur texte étiquette info
← Précédent Utilitaires
Suivant → Personnalisation