Maison > interface Web > tutoriel CSS > Comment détecter le mode sombre en JavaScript pour styliser les éléments Stripe ?

Comment détecter le mode sombre en JavaScript pour styliser les éléments Stripe ?

Susan Sarandon
Libérer: 2024-11-10 14:38:02
original
526 Les gens l'ont consulté

How to Detect Dark Mode in JavaScript for Styling Stripe Elements?

Détection du mode sombre en JavaScript pour une utilisation avec l'API Stripe Elements

Windows et macOS proposent désormais des modes sombres, permettant aux utilisateurs d'ajuster la couleur de l'interface schéma selon leurs préférences. Pour le style CSS, @media (prefers-dark-interface) peut être utilisé pour appliquer des règles spécifiques pour le mode sombre. Cependant, cette approche n'affectera pas directement les composants stylisés en JavaScript, tels que ceux créés avec l'API Stripe Elements.

Pour détecter le jeu de couleurs préféré du système d'exploitation en JavaScript, la méthode window.matchMedia peut être utilisée :

if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches) {
    // dark mode is enabled
}
Copier après la connexion

Cette vérification renverra vrai si l'utilisateur a activé le mode sombre sur son système. Vous pouvez ensuite utiliser ces informations pour appliquer dynamiquement des styles personnalisés à vos éléments Stripe, garantissant ainsi la cohérence avec le thème d'interface préféré de l'utilisateur.

Par exemple, si vous souhaitez définir la couleur du texte des éléments Stripe sur blanc en mode sombre est activé, vous pouvez utiliser l'extrait suivant :

const stripeElementStyles = {
  base: {
    color: window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches ? COLORS.white : COLORS.darkGrey,
    // ... other styles
  }
}
Copier après la connexion

De plus, si vous souhaitez surveiller les modifications apportées aux préférences de jeu de couleurs de l'utilisateur, vous pouvez utiliser l'option Méthode addEventListener :

window.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', event => {
    const newColorScheme = event.matches ? 'dark' : 'light';
    // Update styles based on the new color scheme
});
Copier après la connexion

En mettant en œuvre ces techniques, vous pouvez vous assurer que vos éléments Stripe s'adaptent de manière transparente à la palette de couleurs préférée de l'utilisateur, offrant une expérience cohérente et visuellement agréable quel que soit son système d'exploitation ou les paramètres de son appareil.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal