Composants de style dans le Kit de ressources Microsoft Graph
Chaque composant du Kit de ressources Microsoft Graph documente un ensemble de propriétés personnalisées CSS que vous pouvez utiliser pour modifier l’apparence de certains éléments. Vous trouverez les propriétés CSS personnalisées disponibles dans chaque documentation de composant. Par exemple :
.person {
--person-avatar-size: 34px;
}
<mgt-person class="person" person-query="me" view="fourlines" id="online" show-presence></mgt-person>
Vous ne pouvez pas appliquer de style aux éléments internes d’un composant, sauf si vous fournissez une propriété personnalisée CSS. Les éléments enfants du composant sont hébergés dans un dom d’ombre.
Pour plus de flexibilité, envisagez d’utiliser des modèles personnalisés.
Appliquer des thèmes
Deux thèmes sont disponibles : light
et dark
. Ces thèmes sont pris en charge automatiquement, car les composants mgt utilisent des éléments web de l’interface utilisateur Fluent. Par défaut, tous les composants sont dans le light
thème. Pour basculer vers dark
le thème, vous pouvez le faire globalement pour l’ensemble du document à l’aide du mgt-theme-toggle
composant, ou vous pouvez mettre à jour le thème d’un composant en définissant les valeurs de jeton CSS personnalisées sur le composant.
Exemple 1 : Thème global utilisant mgt-theme-toggle
À l’aide du composant mgt-theme-toggle , vous pouvez définir les thèmes du document en le plaçant à un emplacement pratique pour votre expérience de thème. Ce composant affiche un bouton bascule que vous pouvez utiliser pour basculer entre light
les modes et dark
.
<body>
<mgt-theme-toggle></mgt-theme-toggle>
<header><mgt-login></mgt-login></header>
<article><mgt-agenda></mgt-agenda></article>
<footer></footer>
</body>
Exemple 2 : Thème d’un composant programmatiquement sans le bouton bascule de thème
Vous pouvez thèmer un composant individuel par programmation sans utiliser le theme-toggle
composant. Pour ce faire, appelez la applyTheme
fonction à partir de @microsoft/mgt
qui accepte le mode en tant que light
ou dark
et l’élément HTML. Par défaut, tous les éléments sont rendus dans le light
thème.
Définition d’éléments spécifiques sur un thème sombre
Vous pouvez définir le deuxième mgt-login
composant sur dark
thème et laisser les deux autres dans light
le thème.
<mgt-login id="login-one"></mgt-login>
<mgt-login id="login-two"></mgt-login>
<mgt-login id="login-one"></mgt-login>
import { applyTheme } from "@microsoft/mgt-components";
const loginTwo = document.querySelector("#login-two");
if (loginTwo) {
applyTheme("dark", loginTwo);
}
Exemple 3 : Personnaliser les jetons CSS d’un composant
Vous pouvez utiliser plusieurs jetons CSS pour appliquer un style à un composant si vous souhaitez remplacer les couleurs de thème actuelles. Consultez la page du composant particulier pour obtenir la liste des jetons disponibles.
Remarque : la personnalisation de ces jetons signifie que vos valeurs définies sont les valeurs par défaut utilisées et que l’utilisation du
mgt-theme-toggle
composant n’aura aucun effet.
<mgt-people-picker class="people-picker"></mgt-people-picker>
.people-picker {
--people-picker-selected-option-background-color: orange;
--people-picker-selected-option-highlight-background-color: red;
--people-picker-dropdown-background-color: blue;
--people-picker-dropdown-result-background-color: yellow;
--people-picker-dropdown-result-hover-background-color: gold;
--people-picker-dropdown-result-focus-background-color: green;
--people-picker-no-results-text-color: orange;
--people-picker-input-background: gray;
--people-picker-input-border-color: yellow;
--people-picker-input-hover-background: green;
--people-picker-input-hover-border-color: red;
--people-picker-input-focus-background: purple;
--people-picker-input-focus-border-color: orange;
--people-picker-input-placeholder-focus-text-color: yellow;
--people-picker-input-placeholder-hover-text-color: gold;
--people-picker-input-placeholder-text-color: white;
--people-picker-search-icon-color: yellow;
--people-picker-remove-selected-close-icon-color: blue;
/** You can also change the person tokens **/
--person-line1-text-color: blue;
--person-line2-text-color: red;
}
Vous pouvez également utiliser des jetons globaux pour la personnalisation qui s’applique à tous les éléments du DOM. Le kit de ressources définit les jetons globaux CSS personnalisés suivants.
<mgt-file-list></mgt-file-list>
body {
/**
* Overrides the default font-family 'Segoe UI', 'Segoe UI Web (West European)', 'Segoe UI', -apple-system, 'BlinkMacSystemFont', 'Roboto', 'Helvetica Neue', sans-serif for dark and light theme.
*/
--default-font-family: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
/**
* Overrides the default font-size of 14px
*/
--default-font-size: 20px;
}
Exemple 4 : Personnaliser les jetons CSS de l’interface utilisateur Fluent
Vous pouvez personnaliser les jetons utilisés par l’interface utilisateur Fluent pour appliquer un style au composant d’interface utilisateur Fluent utilisé dans un mgt
composant. Fluent UI Web Components fournit une prise en charge de première classe pour les jetons de conception et simplifie la définition, l’obtention et l’utilisation des jetons de conception.
Pour plus d’informations sur la personnalisation des composants web de l’interface utilisateur Fluent, consultez Concevoir des jetons.
Vous pouvez également remplacer les valeurs de jeton de conception existantes par vos propres valeurs. Nous vous déconseillons cette pratique, car la valeur que vous définissez sera utilisée dans le DOM où un mgt
composant avec un élément d’interface utilisateur Fluent sous-jacent est utilisé. Il ne change pas dans les light
modes de thème ou dark
.
<mgt-login></mgt-login>
body {
/**
* Overrides the default #ffffff color for dark theme and #000000 color for light theme
*/
--neutral-foreground-rest: yellow !important;
/**
* Overrides the default fluent UI components font-family
*/
--body-font: 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
}
En light
mode thème :
En dark
mode thème :