ForHosting KIT · Outils pour développeurs

Minifiez du code CSS et mesurez le gain de taille

Les feuilles de style lisibles comportent souvent des retraits, des sauts de ligne, des commentaires explicatifs et des points-virgules finaux inutiles au navigateur.

● BetaGratuit · dans votre navigateur
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt

Ce minificateur supprime ce poids de livraison tout en préservant les chaînes entre guillemets, l’ordre des sélecteurs, les déclarations et la structure des règles. Il renvoie le CSS compact, les nombres d’octets UTF-8 avant et après traitement, ainsi que le pourcentage de réduction. L’opération est déterministe, sans accès réseau, et refuse les accolades déséquilibrées.

Ce que le minificateur retire

Le minificateur cible la mise en forme dont le navigateur n’a pas besoin lorsqu’il reçoit une feuille de style. Il supprime les commentaires de bloc, réduit les suites d’espaces et de sauts de ligne, retire les espaces autour de la ponctuation structurelle et enlève le dernier point-virgule placé juste avant une accolade fermante. Il ne réordonne pas les règles, ne fusionne pas les sélecteurs, ne renomme pas les propriétés personnalisées, ne raccourcit pas les couleurs et ne réécrit pas les calculs. Cette limite prudente est essentielle, car le comportement du CSS dépend de l’ordre du code, de la spécificité et du contenu exact de certaines valeurs. Les chaînes entre guillemets sont analysées séparément : les espaces, accolades, signes de ponctuation et textes ressemblant à des commentaires dans une URL ou un contenu généré restent intacts. Les guillemets échappés sont également respectés. Les espaces séparant des jetons sont conservés si leur suppression risque de joindre deux mots ou valeurs. Utilisez le résultat comme ressource générée et gardez la source lisible dans votre gestionnaire de versions.

Fonctionnement de la validation et des mesures

Avant de fournir un résultat, l’analyseur suit chaque accolade ouvrante et fermante située hors des commentaires et des chaînes entre guillemets. Une fermeture sans ouverture préalable, ou une ouverture encore présente à la fin, déclenche une erreur d’entrée non valide au lieu de produire un CSS partiel. Ce contrôle repère rapidement les erreurs de copier-coller et les feuilles tronquées. La capacité refuse aussi un CSS absent ou vide, un commentaire inachevé et une chaîne non fermée, car ces entrées ne peuvent pas être minifiées de manière prévisible. Les tailles sont mesurées en octets UTF-8, et non en caractères JavaScript. Cette distinction compte pour les noms de polices non ASCII, le contenu généré localisé et les sélecteurs Unicode, où un caractère visible peut occuper plusieurs octets pendant le transfert. Le pourcentage est calculé à partir des deux nombres d’octets, puis arrondi à deux décimales. Le même analyseur déterministe traite chaque requête sans réseau, hasard, horloge ni état externe : une entrée identique produit toujours le même CSS et les mêmes mesures.

Intégrer le résultat au processus de livraison

Un processus courant conserve le CSS mis en forme comme source modifiable et ne minifie que la copie destinée à un site, un paquet applicatif, un modèle d’e-mail ou un hébergeur de ressources statiques. Envoyez la feuille complète, lisez la valeur compacte du champ css et écrivez-la dans l’artefact de déploiement. Les champs original_bytes et minified_bytes peuvent alimenter les journaux de compilation, tandis que reduction_percent donne une mesure immédiatement lisible de l’économie. Une tâche d’intégration continue peut comparer ces mesures entre versions afin de détecter une croissance accidentelle ; pour un budget de taille, utilisez toutefois les octets exacts plutôt que le pourcentage arrondi. Cet outil est un minificateur, pas un compilateur CSS complet : il ne résout pas les imports, n’ajoute pas de préfixes, ne valide pas toutes les propriétés, ne transpile pas la nouvelle syntaxe et ne combine pas les fichiers. Effectuez ces transformations d’abord, puis minifiez la sortie finale. Si les accolades sont invalides, corrigez ou régénérez la source. L’automatisation API coûte $0.002 par requête.

Préparer une feuille pour la production

Transformez une feuille lisible et commentée en ressource de déploiement compacte, tout en gardant la source pour la maintenance.

Mesurer l’optimisation du CSS

Consignez les nombres exacts d’octets UTF-8 et le pourcentage de réduction dans un rapport de compilation ou de performances.

Valider la structure d’un CSS généré

Refusez la sortie tronquée d’un générateur si les accolades de ses règles sont déséquilibrées avant le déploiement.

Que retire le minificateur CSS ?

Il retire les commentaires de bloc, les espaces superflus autour de la structure CSS et le point-virgule précédant chaque accolade fermante.

Quel est le prix d’une requête API ?

Chaque requête API coûte $0.002.

Comment le pourcentage de réduction est-il calculé ?

Il compare les nombres d’octets UTF-8 avant et après minification, puis arrondit la réduction à deux décimales.

Que se passe-t-il si les accolades sont déséquilibrées ?

La requête échoue avec une erreur d’entrée non valide au lieu de renvoyer un CSS incomplet ou trompeur.

Les commentaires ou accolades dans les chaînes sont-ils retirés ou comptés ?

Non. Le contenu entre guillemets est préservé et ses accolades n’interviennent pas dans la validation structurelle.

Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.

POSThttps://api.kit.forhosting.com/dev2/minify-css

Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.

curl -X POST https://api.kit.forhosting.com/dev2/minify-css \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"css":"/* Theme */\n.card {\n  color: red;\n  padding: 1rem;\n}\n"}'
{
  "css": "/* Theme */\n.card {\n  color: red;\n  padding: 1rem;\n}\n"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev2.minify_css",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Consulter la documentation complète du KIT →