演習 - ブランディングに合わせたコンポーネントのスタイル設定
この演習では、Microsoft Graph ツールキット コンポーネントでカスタム CSS プロパティを使用してアプリケーションのスタイル設定を変更する方法について説明します。
始める前に
この演習の前提条件として、前の演習「属性を使用してコンポーネントの動作を変更する」を完了している必要があります。
ブランディングに合わせたログイン コンポーネントのスタイル設定
たとえば、ログイン コンポーネントのボタン コンテンツの外観を変更するとします。
index.html では、<head> 内の <style> タグを使用してコンポーネントをカスタマイズすることができます。
<head>
<style>
</style>
</head>
ページの本文をカスタマイズするには、
<style>タグの間にbody{}を追加します。body{}セレクター内で次の CSS プロパティを使用します。-
background-colorテーマの背景色に従ってページの背景色を変更します -
colorテーマのテキストの色に従ってページのテキストの色を変更します
-
Login コンポーネントをカスタマイズするには、
<style>タグの間にmgt-login{}を追加します。mgt-login{}セレクター内で次の CSS プロパティを使用します。-
--login-button-paddingは、"ユーザーのメール" 要素内のスペースを変更します。 上下左右に均等にスペースを確保するために、30pxに定義します。 -
--login-signed-in-backgroundボタンの背景色を に変更します。slategrey -
--login-popup-text-colorは、ユーザー プロファイルのポップアップ フォントの色をslategrey(スレートグレー) に変更します。
-
Agendaコンポーネントをカスタマイズするには、<style>タグの間にmgt-agenda{}を追加します。mgt-agenda{}セレクター内で次の CSS プロパティを使用します。-
--agenda-header-font-sizeは、予定一覧ヘッダーのフォント サイズを24pxに変更します。 -
--agenda-event-paddingは、イベント内の間隔を20pxに修正します。 -
--agenda-event-background-colorは、イベントの背景色をslategrey(スレートグレー) に変更します。 -
--agenda-event-box-shadowは、イベントのボックス シャドウの色をgrey(グレー) に変更します。
<head> <style> body { background-color: var(--fill-color); color: var(--neutral-foreground-rest); } mgt-login { --login-signed-in-background: slategrey; --login-button-padding: 30px; --login-popup-text-color: slategrey; } mgt-agenda { --agenda-header-font-size: 24px; --agenda-event-padding: 20px; --agenda-event-background-color: slategrey; --agenda-event-box-shadow: grey; } </style> </head>-
テーマの色を切り替えるコンポーネントを追加しましょう。 index.html ファイルを開き、
mgt-theme-toggleタグを<body>タグに追加します。<html> <head> ... </head> <body> <mgt-theme-toggle></mgt-theme-toggle> ... </body> </html>
index.html ファイルの最終バージョンは、この例のように表示されます。
<!DOCTYPE html>
<html>
<head>
<script src="https://unpkg.com/@microsoft/mgt@3/dist/bundle/mgt-loader.js"></script>
<style>
body {
background-color: var(--fill-color);
color: var(--neutral-foreground-rest);
}
mgt-login {
--login-signed-in-background: slategrey;
--login-button-padding: 30px;
--login-popup-text-color: slategrey;
}
mgt-agenda {
--agenda-header-font-size: 24px;
--agenda-event-padding: 20px;
--agenda-event-background-color: slategrey;
--agenda-event-box-shadow: grey;
}
</style>
</head>
<body>
<mgt-msal2-provider client-id="[Your-Client-ID]"></mgt-msal2-provider>
<mgt-theme-toggle></mgt-theme-toggle>
<mgt-login>
<template data-type="signed-in-button-content" >
<div>
{{personDetails.mail}}
</div>
</template>
</mgt-login>
<mgt-agenda class="agenda"
date="June 29, 2023"
days="3"
group-by-day>
</mgt-agenda>
</body>
</html>
ブラウザーでアプリをテストする
Visual Studio Code の場合、次のキーの組み合わせを押し、Live Server で検索します。
- Windows: CTRL+SHIFT+P
- macOS: COMMAND+SHIFT+P
Live Server を実行してアプリテストします。
ブラウザーを開き、
http://localhost:3000に移動します。Microsoft 365 開発者アカウントでサインインします。 必要なアクセス許可に同意し、[同意する] を選択します。
テーマトグルを使用して、テーマをダークに切り替えます
最終的に、コンポーネントにダーク テーマが自動的に適用され、[サインイン済み] ボタンのスタイルが変更されていることがわかります。
全体として、Microsoft Graph ツールキット コンポーネントは、カスタマイズに関して柔軟に対応することができます。 カスタム CSS プロパティを使用してコンポーネントの外観を変更し、スタイルをアプリケーションのブランディングに合わせることができます。