Générez la balise meta color-scheme et la propriété CSS
Ce générateur transforme votre choix de compatibilité en deux déclarations prêtes à copier : l'élément meta HTML destiné à l'en-tête et la propriété CSS color-scheme correspondante.
Lancer gratuitement
Choisissez le mode clair si la page ne gère qu'une interface claire, le mode sombre si elle ne gère qu'une interface sombre, ou les deux lorsque chaque composant fonctionne dans les deux apparences. Le résultat est déterministe, normalisé et utilisable dans un modèle, une feuille de style, un site statique, une bibliothèque de composants ou une chaîne de compilation.
Déclarez les thèmes réellement pris en charge
La déclaration color-scheme constitue une promesse sur la page, et non un convertisseur automatique de thème. Sélectionnez clair uniquement si les contrôles, arrière-plans, textes, bordures, images et états de focus restent utilisables dans une présentation claire. Sélectionnez sombre lorsque ces mêmes éléments sont conçus pour une présentation sombre. Choisissez les deux si toute l'interface fonctionne dans les deux cas. Le générateur traduit ce choix en <code>light dark</code>, avec une préférence pour le clair. La précision est essentielle : le navigateur peut exploiter cette information pour les contrôles natifs, les barres de défilement et le fond du document. Une déclaration trop large peut produire des contrôles incohérents ou des flashs illisibles. Vérifiez les champs désactivés, le remplissage automatique, les messages de validation, la sélection, les blocs de code, les widgets et les icônes. La meilleure valeur est la description la plus stricte et fidèle de la compatibilité livrée. Cet outil assure la mise en forme ; vos tests confirment sa véracité.
Placez correctement le HTML et le CSS générés
Insérez l'élément meta dans le <code><head></code>, assez tôt pour que le navigateur le lise avant d'afficher l'essentiel de l'interface. La balise renvoyée est complète et convient à un document HTML statique, une mise en page rendue côté serveur ou la configuration d'un générateur de sites. Placez la déclaration CSS dans la règle correspondant à la portée voulue. Pour tout le document, il s'agit généralement de <code>:root</code> ; un composant peut l'appliquer à sa propre racine. La déclaration est fournie sans sélecteur afin de fonctionner avec le CSS classique, les préprocesseurs, les modules CSS et les objets de style. Les sorties HTML et CSS emploient la même valeur normalisée et évitent toute contradiction. Vous pouvez les utiliser ensemble pour fournir une indication précoce et une valeur explicite dans la cascade, ou ne retenir que celle requise par votre architecture. Vérifiez ensuite la source finale et le CSS compilé, car les frameworks, gestionnaires d'en-tête, minificateurs ou doublons peuvent modifier la valeur reçue par le navigateur.
Distinguez la compatibilité de la sélection du thème
Prendre en charge deux thèmes et choisir le thème actif sont deux opérations liées, mais distinctes. <code>light dark</code> indique que les deux rendus sont compatibles ; il ne crée ni variables de couleur, ni commutateur, ni préférence persistante, ni requête média. Une réalisation robuste définit des variables sémantiques pour les surfaces, textes, bordures et accents, puis les adapte selon la stratégie du produit. Celle-ci peut suivre le système, respecter un réglage de compte, réagir à un attribut du document ou combiner ces méthodes. Ne générez la déclaration qu'après avoir finalisé les états visuels. Testez les réglages clair et sombre, le clavier, le zoom, le contraste élevé et les couleurs forcées. Contrôlez aussi images, iframes, formulaires tiers, coloration syntaxique et dialogues natifs. En automatisation, conservez l'entrée avec les chaînes générées. Si vous abandonnez un thème, régénérez les deux déclarations depuis le nouveau choix au lieu d'en modifier une seule. Une source commune empêche les divergences entre modèles, paquets et déploiements.
Cas d’usage
Préparez l'en-tête d'une page
Créez un élément meta correct pour une page statique ou un rendu serveur sans mémoriser sa syntaxe exacte.
Alignez le CSS et les métadonnées
Produisez les deux déclarations depuis un choix unique afin que la feuille de style et l'en-tête restent cohérents.
Automatisez l'amorçage des thèmes
Exploitez la sortie déterministe dans un générateur de projet, une documentation, des composants ou une compilation configurable.
Questions fréquentes
Que produit l'option correspondant aux deux thèmes ?
Elle produit la valeur light dark, une balise meta contenant cette valeur et la déclaration CSS color-scheme associée.
Cet outil crée-t-il un thème sombre ?
Non. Il déclare les thèmes compatibles ; vous devez encore préparer les couleurs, ressources, états et le mécanisme de sélection.
Faut-il utiliser la balise meta, la propriété CSS ou les deux ?
Utilisez ce qu'exige votre architecture. Les deux réunies offrent une indication précoce et une valeur explicite dans la cascade.
Puis-je omettre le thème et utiliser une valeur par défaut ?
Non. Ce choix est obligatoire, car une valeur implicite pourrait décrire incorrectement la compatibilité de votre page.
Quel est le coût d'un appel API ?
Chaque requête API coûte $0.002. L'expérience web peut exécuter localement la même logique déterministe.
Pour les développeurs — accès API
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.
Endpoint
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é.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/web/color-scheme-meta-generate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"scheme":"both"}'const res = await fetch("https://api.kit.forhosting.com/web/color-scheme-meta-generate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"scheme": "both"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/color-scheme-meta-generate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"scheme": "both"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/color-scheme-meta-generate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"scheme":"both"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"scheme":"both"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/color-scheme-meta-generate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"scheme": "both"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.color_scheme_meta_generate",
"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.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
timeout_sec | 30 |
max_crawl_pages | 25 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |