Win10の明るさ調整効果を模倣するHTML+CSS+JSサンプルコード

Win10の明るさ調整効果を模倣するHTML+CSS+JSサンプルコード

HTML+CSS+JS で Win10 の明るさ調整効果を模倣

コード

<!doctypehtml>
<html>
	<ヘッド>
		<メタ文字セット="utf-8">
		<title>Win10 の明るさ調整を模倣する</title>
		<スタイル>
			.コントロールバー{
				高さ:200px;
				幅:500ピクセル;
				border-bottom:3px 実線 #888888;
				
			}
			.コントロールバーカーソル{
				高さ:25px;
				幅:8px;
				背景: #505151;
				境界線の半径:5px;
				上マージン:-12.5px;
				位置:相対;
				トップ:0;
				左:0;
			}
			.コントロールバーカーソル:ホバー{
				背景:白;
			}
			#コントロールバーマスク{
				上マージン:-203px;
				幅:0px;
			}
			。マスク{
				位置:固定;
				下:0;
				トップ:0;
				左:0;
				右:0;
				背景:黒;
				zインデックス:-1;
			}
		</スタイル>
	</head>
	<本文>
		<div class="mask"></div>
		<div class="control_bar"></div>
		<div class="control_bar" style="border-bottom:3px solid #505151;" id="control_bar_mask"></div>
		<div class="control_bar_cursor"></div>
	</本文>
	<スクリプト>
		window.onload = 関数(){
			var control_bar = document.getElementsByClassName("control_bar")[0];
			var コントロール バー マスク = document.getElementById("コントロール バー マスク");
			var control_bar_cursor = document.getElementsByClassName("control_bar_cursor")[0];
			コントロールバーカーソルのオフセットを設定します。
			var マスク = document.getElementsByClassName("マスク")[0];
			document.body.onmousedown = 関数(){
				window.onmousemove = 関数(){
					var カーソル_X = event.clientX;
					var カーソル_Y = event.clientY;
					カーソルXがdef_leftの場合
						コントロールバーカーソル.style.left = 0;
					}それ以外の場合(cursor_X > control_bar.offsetWidth + def_left){
						コントロールバーカーソルのスタイルを左にドラッグします。
					}それ以外{
						control_bar_cursor.style.left = cursor_X - def_left + "px";
					}
					//明るさの比率 var ratio = parseInt(control_bar_cursor.offsetLeft - def_left) / parseInt(control_bar.offsetWidth - 1);
					control_bar_mask.style.width = 比率 * control_bar.offsetWidth + "px";
					mask.style.opacity = 1 - 比率;
					};
				window.onmouseup = 関数(){
					ウィンドウのonmousemove = null;
				};
			};
		};
	</スクリプト>
</html>

1. 各要素の外観を書き留める

ここでは、観察しやすいようにボディに背景色が追加されています。

html

<div class="コントロールバー">
</div>
<div class="control_bar" style="border-bottom:3px solid #505151;"  
id="コントロールバーマスク>
</div>
<div class="コントロールバーカーソル">
</div>

CS

体{
    背景:バック;
}
.コントロールバー{
    高さ:200px;
    幅:500ピクセル;
    border-bottom:3px 実線 #888888;
}
.コントロールバーカーソル{
    高さ:25px;
    幅:8px;
    背景: #505151;
    境界線の半径:5px;
}

レンダリング

2. 要素を積み重ねる

CS

体{
    背景:黒;
}
.コントロールバー{
    高さ:200px;
    幅:500ピクセル;
    border-bottom:3px 実線 #888888;

}
.コントロールバーカーソル{
    高さ:25px;
    幅:8px;
    背景: #505151;
    境界線の半径:5px;
    上マージン:-12.5px;
    位置:相対;
    トップ:0;
    左:0;
}
.コントロールバーカーソル:ホバー{
    背景:白;
}
#コントロールバーマスク{
    上マージン:-203px;
    幅:100ピクセル;
}

マスク効果を出すために、マスクレイヤーのdiv幅を小さく設定します。

3. jsを追加する

js

window.onload = 関数(){
    var control_bar = document.getElementsByClassName("control_bar")[0];
    var コントロール バー マスク = document.getElementById("コントロール バー マスク");
    var control_bar_cursor = document.getElementsByClassName("control_bar_cursor")[0];
    コントロールバーカーソルのオフセットを設定します。
    document.body.onmousedown = 関数(){
        window.onmousemove = 関数(){
            var カーソル_X = event.clientX;
            var カーソル_Y = event.clientY;
            カーソルXがdef_leftの場合
                コントロールバーカーソル.style.left = 0;
            }それ以外の場合(cursor_X > control_bar.offsetWidth + def_left){
                コントロールバーカーソルのスタイルを左にドラッグします。
            }それ以外{
                control_bar_cursor.style.left = cursor_X - def_left + "px";
            }
            var 比率 = parseInt(control_bar_cursor.offsetLeft - def_left) / parseInt(control_bar.offsetWidth - 1);
            control_bar_mask.style.width = 比率 * control_bar.offsetWidth + "px";
        };
        window.onmouseup = 関数(){
            ウィンドウのマウス移動を null にします。
        };
    };
};

4.マスクを追加し、コントロールバーを使用して透明度を制御し、明るさ調整効果を実現します。

<div class="mask"></div>
。マスク{
    位置:固定;
    下:0;
    トップ:0;
    左:0;
    右:0;
    背景:黒;
    zインデックス:-1;
}
window.onload = 関数(){
    var control_bar = document.getElementsByClassName("control_bar")[0];
    var コントロール バー マスク = document.getElementById("コントロール バー マスク");
    var control_bar_cursor = document.getElementsByClassName("control_bar_cursor")[0];
    コントロールバーカーソルのオフセットを設定します。
    var マスク = document.getElementsByClassName("マスク")[0];
    document.body.onmousedown = 関数(){
        window.onmousemove = 関数(){
            var カーソル_X = event.clientX;
            var カーソル_Y = event.clientY;
            カーソルXがdef_leftの場合
                コントロールバーカーソル.style.left = 0;
            }それ以外の場合(cursor_X > control_bar.offsetWidth + def_left){
                コントロールバーカーソルのスタイルを左にドラッグします。
            }それ以外{
                control_bar_cursor.style.left = cursor_X - def_left + "px";
            }
            //明るさの比率 var ratio = parseInt(control_bar_cursor.offsetLeft - def_left) / parseInt(control_bar.offsetWidth - 1);
            control_bar_mask.style.width = 比率 * control_bar.offsetWidth + "px";
            mask.style.opacity = 1 - 比率;
        };
        window.onmouseup = 関数(){
            ウィンドウのマウス移動を null にします。
        };
    };
};

要約する

これで、Win10 の明るさ調整効果を模倣する HTML+CSS+JS のサンプル コードに関するこの記事は終了です。より関連性の高い HTML CSS Win10 明るさ調整コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM を応援していただければ幸いです。

<<:  jQueryのコア機能とイベント処理の詳細な説明

>>:  mysql8.x docker リモートアクセスの詳細な設定

推薦する

Reactにおけるキーの役割の詳細な説明

目次質問: ボタンをクリックすると、スパンの色が赤に変わりますか?上記の問題を分析します。 2番目の...

Javascript で関数のカリー化とデカリー化を実装する方法

関数のカリー化(黒い疑問符の顔)? ? ?カレー(黒い疑問符の顔)? ? ?これは完璧な中国語翻訳で...

js シンプルで粗雑なパブリッシュとサブスクライブのサンプルコード

パブリッシュ/サブスクライブとは何ですか?例を挙げてみましょう。あなたは服を買うために店に行きます。...

プログレッシブ ウェブ アプリ (PWA) の開発方法

目次概要必要とするアプリURL PWA にはどのような技術コンポーネントが必要ですか?マニフェストフ...

Centos7 サーバーで jar パッケージ プロジェクトを開始する最良の方法

序文Linux 上で jar パッケージを実行する方法は誰もが知っています。なぜ別々に話したいのでし...

WINDOWS での MYSQL のインストールに関する詳細なチュートリアル

1. インストールパッケージをダウンロードする- お使いのコンピュータシステムに応じて適切なバージョ...

deepin20 で NVIDIA クローズドソース ドライバーをインストールするための詳細な手順

ステップ1: ディープ「グラフィックドライバー」をインストールするdeepin v20にはデフォルト...

OpenShift のクイックインストールの詳細な手順

OpenShift 3.9 の最新バージョンを体験する最も早い方法。準備 [root@host ~]...

Linux でのソース パッケージ インストールのサービス管理

目次1. ソースパッケージサービスの起動管理2. ソースパッケージサービスのセルフスタート管理3. ...

ビューポートの基本原理と詳細な使用方法

1. ビューポートの概要モバイル ブラウザは通常、画面よりも幅の広い仮想ウィンドウにページをレンダリ...

マインスイーパゲームを実装するための jQuery プラグイン (1)

この記事では、jQueryプラグインを使用したマインスイーパゲームの最初の記事の具体的なコードを参考...

Centos7 に Zabbix3.0 をインストールするための非常に詳細な手順

序文最近、同社の業務の一部がコンピュータルームに移転し、ホストリソースの監視と管理をより便利に行うた...

Mysqlの同時パラメータ調整の詳細な説明

目次クエリキャッシュの最適化概要クエリプロセスクエリキャッシュ構成クエリキャッシュの無効化メモリ管理...

MySQL クエリのソートとクエリ集計関数の使用法の分析

この記事では、例を使用して、MySQL クエリのソート関数とクエリ集計関数の使用方法を説明します。ご...

win10 で mysql8.0.23 をインストールし、「サービスが制御機能に応答しません」という問題を解決する方法

Windows10にmysqlをインストールする1. 公式サイトからMySQLをダウンロードするウェ...