REPOP WEBツール倉庫

ブラウザだけで完結する便利なWEBツール、WEBアプリが沢山あります

スポットライトUI ジェネレーター

スポットライトUI ジェネレーター

CSSとJavaScriptで、マウスカーソルの動きに合わせて指定範囲をスポットライトのように明るく照らし、周囲を暗くマスクするインタラクティブなUIを生成します。

プレビュー

<!-- スポットライトをあてる対象要素 -->
<div class="spotlight-area">
	<h3>スポットライトUI デモ</h3>
	<p>エリア内でマウスを動かすと、カーソルの周囲が丸く照らされます。</p>
</div>
.spotlight-area {
	position: relative; /* 子要素の配置基準および疑似要素の基準となる設定 */
	width: 100%;
	min-height: 300px;
	padding: 40px 20px;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	color: #ffffff;
	background-color: #111111; /* 基本となる背景色 */
	overflow: hidden; /* 疑似要素のはみ出しを防ぐ設定 */
}

/* スポットライトを表現するためのマスク用疑似要素 */
.spotlight-area::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	pointer-events: none; /* マスクの下にあるボタンなどのクリックイベントを阻害しない設定 */
	/* 放射状グラデーションを使ってスポットライトの中心(透明)から周囲(暗転)を構築 */
	background: radial-gradient(
		circle {{radius}}px at var(--x, 50%) var(--y, 50%),
		rgba(0, 0, 0, 0) 0px, /* 中心点は完全に透明 */
		rgba(0, 0, 0, 0) {{inner_radius}}px, /* ぼかしの開始位置まで透明を維持 */
		rgba(0, 0, 0, {{mask_opacity}}) calc({{inner_radius}}px + {{blur}}px) /* ぼかしの終了位置に向かって指定の不透明度へ */
	);
	transition: background 0.1s ease-out; /* 追従をなめらかに見せるためのトランジション */
}
(() => {
	// 対象となるスポットライトエリアを取得
	const area = document.querySelector('.spotlight-area');
	if (!area) return;

	// マウスが動いた際に対象エリア内での座標を算出してCSSカスタムプロパティを更新
	area.addEventListener('mousemove', (e) => {
		const rect = area.getBoundingClientRect();
		const x = e.clientX - rect.left; /* エリア内の相対X座標 */
		const y = e.clientY - rect.top;  /* エリア内の相対Y座標 */
		area.style.setProperty('--x', `${x}px`);
		area.style.setProperty('--y', `${y}px`);
	});

	// タッチデバイスのジェスチャー操作に対応するイベントリスナー
	area.addEventListener('touchmove', (e) => {
		if (e.touches.length > 0) {
			const rect = area.getBoundingClientRect();
			const x = e.touches[0].clientX - rect.left; /* タッチ位置の相対X座標 */
			const y = e.touches[0].clientY - rect.top;  /* タッチ位置の相対Y座標 */
			area.style.setProperty('--x', `${x}px`);
			area.style.setProperty('--y', `${y}px`);
		}
	}, { passive: true }); // パッシブイベントリスナーでスクロールパフォーマンスを向上
})();

機能、使い方

CSSプロパティの説明

radial-gradientを用いて、中心部が透過し外側に向けて徐々に指定の不透明度で暗くなるグラデーションを定義しています。

document.addEventListener('mousemove')でカーソルのクライアント座標を取得し、style.setPropertyによってCSS変数へ即座に反映させています。

公開日 :
桜が舞うアニメーション ジェネレーター

桜が舞うアニメーション ジェネレーター

CSSとJavaScriptで、画面上部から風に吹かれながら優雅に舞い散る桜の花びらのアニメーションコードを生成します。

アニメーション付きハンバーガーメニュー ジェネレーター

アニメーション付きハンバーガーメニュー ジェネレーター

CSSとJavaScriptで、クリック時に3本線からバツ印へ変化するハンバーガーボタンと、画面外からスライドインするサイドメニューを自由にカスタマイズしてコード生成します。

万華鏡ジェネレーター

万華鏡ジェネレーター

CSSとJavaScriptで、Canvasを使用し幾何学模様が中心から対称に広がり色鮮やかに変化する万華鏡のような背景アニメーションを生成します。

3Dエンドロール ジェネレーター

3Dエンドロール ジェネレーター

CSSとJavaScriptで、映画のオープニングやエンディングのように画面の奥へ向かって流れる立体的な3Dテキストのスクロール演出を生成します。

モーダルウィンドウ ジェネレーター

モーダルウィンドウ ジェネレーター

CSSとJavaScriptで、表示位置、サイズ、開閉アニメーション、暗転オーバーレイの有無などを細かくカスタマイズできるモーダルウィンドウを生成します。

マトリックス風デジタルレイン ジェネレーター

マトリックス風デジタルレイン ジェネレーター

CSSとJavaScriptで、映画「マトリックス」のように上から下へとグリーンのコード文字が流れ落ちるデジタルレイン背景エフェクトを生成します。

紙吹雪が舞うアニメーション ジェネレーター

紙吹雪が舞うアニメーション ジェネレーター

CSSとJavaScriptで、指定したボタンをクリックした際などに画面内に色とりどりの紙吹雪がランダムに舞い落ちる演出を生成します。

波紋アニメーション ジェネレーター

波紋アニメーション ジェネレーター

CSSとJavaScriptで、クリックやタップした位置を中心に、同心円状の波紋が広がりながら消えていくインタラクティブなUIエフェクトを生成します。

画像比較スライダー

画像比較スライダー

2枚の画像を重ねて、スライダーのドラッグ操作で左右に切り替えてビフォーアフターを比較できるインタラクティブな画像比較UIツールです。HTML/CSS/JSコードを取得できます。

3Dに傾く透過カードのCSSジェネレーター

3Dに傾く透過カードのCSSジェネレーター

マウスの動きに合わせて傾き、表面に光が反射したような効果を持つ透過カードのデザインを生成します。

もっと見る

もっと見る

JavaScript関連ツール一覧

JSONXMLJavaScriptHTMLCSSSVGPHPPython画像処理色、カラーコードテキスト
ファイルの文字化け解消ツール

ファイルの文字化け解消ツール

文字化けしてしまうテキストファイル(Shift_JISやEUC-JPなど)の文字コードを自動判定してからUTF-8にデコードし、汎用的に使えるファイルを作成します。

JSONとXMLの相互変換ツール

JSONとXMLの相互変換ツール

JSONデータとXMLデータを相互に変換します。リアルタイムでの変換や、ルート要素・子要素名の指定に対応。

水玉模様のCSSジェネレーター

水玉模様のCSSジェネレーター

背景色、ドットの色、ドットのサイズや間隔、配置パターン(格子状・千鳥状)を調整し、水玉模様(ドット背景)のCSSコードを生成します。

clamp()シュミレーター

clamp()シュミレーター

画面幅に応じて最小サイズから最大サイズまでフォントサイズを滑らかに自動スケーリングさせるCSSのclamp()コードを生成・シミュレートします。

傾いて落ちるボタンのCSSジェネレーター

傾いて落ちるボタンのCSSジェネレーター

ホバーするとぐらっと傾き、クリックすると画面外へと落下するボタン用のアニメーションCSSを生成します。

画像のフチぼかし(透過グラデーションマスク)のCSSジェネレーター

画像のフチぼかし(透過グラデーションマスク)のCSSジェネレーター

画像の端を透過グラデーションでぼかし、背景と滑らかに馴染ませるエフェクトを生成します。mask-imageを使用し、上下左右や円形など複数の方向にフェードアウト可能です。

文字の中に画像(マスクテキスト)のCSSジェネレーター

文字の中に画像(マスクテキスト)のCSSジェネレーター

指定した画像を文字の形に切り抜き、インパクトのあるテキストエフェクトを生成します。グラフィカルな見出しやタイトルの作成に適しています。

フリッカー・ネオン(点滅ネオン)のCSSジェネレーター

フリッカー・ネオン(点滅ネオン)のCSSジェネレーター

不規則な点滅を繰り返す、リアリティのあるネオンサイン文字のエフェクトを生成します。多重シャドウによる発光と透明度の変化で、レトロな雰囲気を演出します。

虹色に輝く枠線(レインボー・ローテート)のCSSジェネレーター

虹色に輝く枠線(レインボー・ローテート)のCSSジェネレーター

枠線が虹色に変化しながら回転し続ける視覚効果を生成します。conic-gradientを活用し、画像不要で軽量な実装が可能です。

ぷかぷか浮遊(フローティング演出)のCSSジェネレーター

ぷかぷか浮遊(フローティング演出)のCSSジェネレーター

要素が空中を漂うような、浮遊アニメーションを生成するツールです。

もっと見る

もっと見る

仕事、作業関連ツール一覧