REPOP WEBツール倉庫

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

animation-play-state(再生・一時停止)のCSS動作テストツール

animation-play-state(再生・一時停止)のCSS動作テストツール

CSSのanimation-play-stateプロパティ(再生・一時停止)の挙動をテストするツールです。合わせてanimation-directionでの逆再生もテストしています。

プレビュー

<div class="test-container">
	<div class="animation-box"></div>

	<div class="controls">
		<!-- 再生 -->
		<input type="radio" name="state" id="anim-play">
		<label for="anim-play" class="btn">再生</label>

		<!-- 逆再生 -->
		<input type="radio" name="state" id="anim-reverse">
		<label for="anim-reverse" class="btn">逆再生</label>
		
		<!-- 一時停止 -->
		<input type="radio" name="state" id="anim-pause">
		<label for="anim-pause" class="btn">一時停止</label>
	</div>
</div>
/* コンテナ */
.test-container {
	padding: 20px;
	text-align: center;
}

/* アニメーションする要素 */
.test-container .animation-box {
	display: inline-block;
	width: 100px;
	height: 100px;
	margin-bottom: 30px;
	background: #0091EA;
	border-radius: 10px;
	/* 初期状態は一時停止にしておく */
	animation: rotateAnim 2s linear infinite paused;
}

/* アニメーション定義 */
@keyframes rotateAnim {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

/* --- ボタンレイアウト --- */
.test-container .controls {
	display: flex;
	justify-content: center;
	gap: 10px;
}

/* ラジオボタンは非表示 */
.test-container input[type="radio"] {
	display: none;
}

/* ボタンの見た目 */
.test-container .btn {
	padding: 8px 16px;
	border: 2px solid #0091EA;
	border-radius: 20px;
	cursor: pointer;
	transition: 0.3s;
	font-size: 14px;
	user-select: none;
	background: #fff;
	color: #0091EA;
}

/* 選択中のボタンスタイル */
.test-container input:checked + .btn {
	background: #0091EA; 
	color: white;
}

/* --- 状態制御 --- */
/* 再生: running */
.test-container:has(#anim-play:checked) .animation-box {
	animation-play-state: running;
}

/* 一時停止: paused */
.test-container:has(#anim-pause:checked) .animation-box {
	animation-play-state: paused;
}

/* 逆再生: reverse + running */
.test-container:has(#anim-reverse:checked) .animation-box {
	animation-direction: reverse;
	animation-play-state: running;
}

機能・使い方

:has()の指定方法、コードの読み方について

このCSSでは、:has()を使うことで、JavaScriptを使わずにラジオボタンのON/OFFに合わせてアニメーションを操作しています。
一見複雑に見えるコードですが、3つの部分に区切って読むと仕組みがよく分かります。

/* 例:再生ボタン(#anim-play)が選ばれている時の指定 */
.test-container:has(#anim-play:checked) .animation-box {
	animation-play-state: running;
}

コードの読み解き方(3ステップ)

この指定は、「条件を満たす親要素を探し、その中にある別の要素を操作する」 という書き方になっています。

1. どこを見る?(親要素)
.test-container:has(...)
まず、外側の枠である.test-containerに注目します。
:has(...)は「(...)を持っているか?」という条件チェックです。
2. どんな条件?(中身のチェック)
#anim-play:checked
これが条件です。「IDがanim-playの要素(再生ボタン)」に「チェックが入っている(:checked)」かどうかを見ています。
つまり、「再生ボタンが押されている状態のコンテナ」 を探しています。
3. 何を変える?(操作対象)
.animation-box
条件を満たしたコンテナの中にある .animation-box(回転する箱)に対して、animation-play-state: running(再生)というスタイルを適用します。

まとめると、「親(コンテナ)が、子(ボタン)の状態を見張っていて、ボタンが押されたら、別の兄弟(箱)に命令を出す」 という連携プレイをCSSだけで実現しています。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ぼんやり光るオーラ(グロー・オーラ)のCSSジェネレーター

ぼんやり光るオーラ(グロー・オーラ)のCSSジェネレーター

要素の背後に柔らかい発光エフェクトを追加し、呼吸するように明滅するアニメーションを付与するツールです。

文字の打ち込み演出(タイプライター)CSSジェネレーター

文字の打ち込み演出(タイプライター)CSSジェネレーター

文字が1文字ずつタイピングされるようなアニメーション効果を生成するCSSジェネレーターです。

物理的に押し込むボタン(3Dプッシュボタン)のCSSジェネレーター

物理的に押し込むボタン(3Dプッシュボタン)のCSSジェネレーター

クリックした際に沈み込むような、厚みのある3Dボタンを生成します。奥行き、押し込み感、カラーを直感的に調整可能です。

鏡面反射(ミラーリフレクション)のCSSジェネレーター

鏡面反射(ミラーリフレクション)のCSSジェネレーター

画像やテキストに対して鏡面反射(リフレクション)エフェクトを適用するCSSを生成します。方向、距離、不透明度を調整可能です。

円を描く文字(円形テキスト)のCSSジェネレーター

円を描く文字(円形テキスト)のCSSジェネレーター

入力したテキストを円形や半円に沿って配置。半径や回転角、文字の間隔を個別に調整して、円形状のタイポグラフィを作成できます。

» もっと見る
JSONJavaScriptHTMLCSSSVGPHPPython画像処理色、カラーコード
磨りガラスのSVGフィルタージェネレーター

磨りガラスのSVGフィルタージェネレーター

背景を物理的に加工し、磨りガラス(曇りガラス)のような質感にするSVGフィルターで表現します。

粒子グラデーションのSVGフィルタージェネレーター

粒子グラデーションのSVGフィルタージェネレーター

モダンなSaaSサイトで人気、ザラついた質感を持つ粒子グラデーション(Grainy Gradient)のSVGフィルターのグラデーション背景を生成します。

JavaScript カラーコード変換実装コード生成ツール

JavaScript カラーコード変換実装コード生成ツール

HEX(16進数)やRGBなどのカラーコードを相互に変換するJavaScriptの実装コードを生成します。

JavaScriptでマウスホイールの回転方向を検出する実装コード

JavaScriptでマウスホイールの回転方向を検出する実装コード

JavaScriptでマウスホイールの回転方向(上・下)を検出するイベントの実装コードを生成します。

JavaScriptで現在時刻をリアルタイムに表示するコード生成ツール

JavaScriptで現在時刻をリアルタイムに表示するコード生成ツール

現在時刻をリアルタイムに更新・表示するJavaScriptコードを生成します。フォーマットをカスタマイズ可能です。

JavaScriptでクリックを検出するイベントの動作テストツール

JavaScriptでクリックを検出するイベントの動作テストツール

右クリックや左クリック、またはダブルクリックを検出するJavaScriptのイベント動作テストができます。

JavaScriptでHTTPSかどうかを判定する動作テストツール

JavaScriptでHTTPSかどうかを判定する動作テストツール

現在のページがHTTPSでアクセスされているか、HTTPでアクセスされているかを判定するJavaScriptコードを生成します。

JavaScriptの長押しイベントを実装するコード生成ツール

JavaScriptの長押しイベントを実装するコード生成ツール

左クリックやタップ長押しのイベントを実装するためのJavaScriptコードを生成します。長押しの時間設定や動作確認が可能です。

JavaScriptのcloneNode()を利用した動作確認ツール

JavaScriptのcloneNode()を利用した動作確認ツール

JavaScriptのcloneNode()を使ってHTML要素を複製数するコードを生成し、動作を確認できます。

MutationObserver()を利用したJavaScriptコードの動作確認ツール

MutationObserver()を利用したJavaScriptコードの動作確認ツール

DOMの変更(要素の追加・削除、属性変化など)を監視するMutationObserver()の動作をリアルタイムで確認できます。

» もっと見る