フロントエンド css3 フィルターは、Web ページのグレー効果を実現できるだけでなく、ナイト モード効果の実現にも役立ちます。どのように実装するか見てみましょう! フィルタプロパティの概要 フィルター: なし | ぼかし() | 明るさ() | コントラスト() | ドロップシャドウ() | グレースケール() | 色相回転() | 反転() | 不透明度() | 彩度() | セピア() | url(); ヒント: 複数のフィルターを区切るにはスペースを使用します。 ウェブサイトのグレー効果 このエフェクト ブログは、よく使用される CSS エフェクトをまとめているときに最初に作成されました。 以下のコードで簡単に実現できます! コードは次のとおりです。 html{ フィルター: グレースケール(100%); //IE ブラウザーの webkit フィルター: グレースケール(100%); //Google ブラウザーの moz フィルター: グレースケール(100%); //Firefox の ms フィルター: グレースケール(100%); -o-filter: グレースケール(100%); フィルター:progid:DXImageTransform.Microsoft.BasicImage(グレースケール=1); -webkit-filter: grayscale(1); // Google Chrome} グレー効果と比較すると、夜間モードを実現するのは少し難しいです。 ナイトモード判定 純粋な Web の場合は、最新のブラウザで prefers-color-scheme クエリ ステートメントを使用できます。 構文は次のとおりです。 非優先: システムは、使用する配色をユーザーに通知しません。 例えば: /* ダークモード */ @media (優先カラースキーム: 暗い) { 本文 { 背景: #333; 色: 白; } } /* ライトモード */ @media (優先カラースキーム: 明るい) { 本文 { 背景: 白; 色: #333; } } JavaScript コードでシステムのダーク テーマまたはライト テーマを判別する必要がある場合は、ネイティブの window.matchMedia() メソッドを使用できます。次に例を示します。 // ダークモードをサポートするかどうか // true または false を返す window.matchMedia("(prefers-color-scheme: dark)").matches; ナイトモードコード html{ フィルター: invert(1) hue-rotate(.5turn); } その後、画像が反転してしまい、非常に醜いものになります。 画像 { フィルター: invert(1) hue-rotate(.5turn); } 画像に別のレイヤーを追加すると、正しい向きになり、純粋な画像がうまくいきます したがって、組み合わせは次のように設定できます。 html、画像 { フィルター: invert(1) hue-rotate(.5turn); } 画像 { 不透明度: .75; } しかし、背景画像と黒い影に問題があります。背景画像については、次のように設定できます。 @media (優先カラースキーム: 暗い) { html、画像 { フィルター: 反転(1) 色相回転(180度); } .bgフィルター{ フィルター: 反転(1) 色相回転(180度); } .some-ele-box { ボックスシャドウ: なし; } } 質問 上記の設定は明るい背景のみに適用され、背景なしまたは透明な背景では機能しません。 また、それぞれのスタイルごとに特別な加工が必要となります。たとえば、フィルターをグローバル変数として使用して、夜間モードに完全に一致させることができます。例えば: @media (優先カラースキーム: 暗い) { html{ フィルター:反転(1) 色相回転(180度) } .dark-img,img { フィルター: 反転(1) 色相回転(180度) } // 背景画像に対する特別な処理 // グローバルカラーに対する特別な処理 // background-color: var(--darkColor) } CSS3 フィルターを使用して Web ページでグレーまたはブラック モードを実現する方法についての記事はこれで終わりです。CSS3 フィルターを使用して Web ページでグレーまたはブラック モードを実現する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 |
<<: アダプティブ Web デザインを実現する方法に関する関連知識ポイントの要約
>>: MySQL および Oracle のバッチ挿入 SQL の一般的な記述例
この記事では、CSS の非常に興味深い属性マスクを紹介します。名前が示すように、マスクはマスクと翻訳...
MySQL は、myisam、innodb、memory、archive、example など、多く...
目次Dockerを使用してMySQLサービスをデプロイする方法DockerでRedisサービスをデプ...
...こんな感じで、今日はポップアップウィンドウを作ろうと思ったのですが、バックエンド PHP によ...
UI デザインにおける多くの概念は言葉で言えば似ているように見えるかもしれませんが、実際には大きく異...
今日は、ローカルの Docker プロジェクト イメージを dockerhub に公開する方法を紹介...
公式サイトから mysql-5.7.19-winx64 をダウンロードします。これはシステムの 64...
目次1. はじめに2. vue-simple-uploaderについて3. vue-simple-u...
<Head>……</head> は <HTML> のファイル ヘ...
体の部位: <button>ライトのオン/オフを切り替える</button>...
この記事の例では、円形の水のアニメーションを実現するためのキャンバスの具体的なコードを参考までに共有...
K8s k8s はクラスターです。クラスターには複数の名前空間があります。名前空間の下には複数のポッ...
FTP は主にファイル転送に使用され、Linux では vsftpd で実装されるのが一般的です。F...
月曜日から日曜日の時間形式の変換(Y --- 年 M --- 月 D--- 日) : : : : :...
Linux がすべてのコマンドをサポートしていない場合はどうすればいいですか?すべてのLinuxコマ...