CSSの:validセレクターで有効な値を持つinput要素をスタイリングする方法
CSSの:validセレクターを使用すると、有効な値が入力されたすべての<input>要素に対してスタイルを適用できます。
:validセレクターとは
:validセレクターは、フォームの入力内容がバリデーション(妥当性チェック)を通過した場合にのみスタイルを適用する擬似クラスです。たとえば、type="email"の入力欄に正しい形式のメールアドレスが入力されたときだけ、背景色や文字色を変えるといった使い方ができます。
逆に、無効な値が入力された場合にスタイルを適用したい場合は「:invalid」セレクターを使用します。両者を組み合わせることで、ユーザーに入力の正誤を視覚的にフィードバックできます。
サンプルコード
以下のコードを実行して、:validセレクターの動作を確認してみましょう。
<!DOCTYPE html>
<html>
<head>
<style>
input:valid {
background: red;
color: white;
}
</style>
</head>
<body>
<h2>見出し</h2>
<input type = "email" value = "amit@example.com">
<p>有効なメールアドレスを入力すると、赤い背景のスタイルが適用されます。</p>
</body>
</html>
実行結果

メールアドレスとして正しい形式の値が入力されている間は、入力欄の背景が赤色になり、文字が白色で表示されます。無効なメールアドレスが入力された場合は、このスタイルは適用されません。
活用のポイント
- :validはHTML5のフォームバリデーションと連動して自動的に動作します。
- ユーザーが正しく入力できているかをリアルタイムで視覚的に伝えられるため、ユーザビリティの向上に役立ちます。
required属性やpattern属性などと組み合わせると、より柔軟な入力チェックとデザインが可能になります。
-
CSSでinput要素のプレースホルダーテキストをスタイリングする方法
HTMLの<input>要素のプレースホルダー(placeholder)テキストをCSSでカスタマイズするには、擬似要素(pseudo-element)をターゲットに指定する必要があります。これを実現するのが、CSSの擬似セレクターである::です。 通常のinput要素とプレースホルダーテキスト まずは、プレースホルダー付きのシンプルなinput要素を見てみましょう。 ブラウザのデフォルトスタイルでは、プレースホルダーテキストは次のように表示されます。 CSSでプレースホルダーの色を変更する それでは、::placeholderセレクターを使って、プレースホルダーのテキストを赤
-
CSSでdiv要素とp要素をまとめて選択する方法(グループセレクタの使い方)
CSSで複数の要素を同時に選択する基本CSSで複数の要素に同じスタイルを適用したい場合は、セレクタをカンマ(,)で区切って指定します。この書き方は「グループセレクタ」と呼ばれ、1つのルールセットを複数の要素にまとめて適用できる便利な手法です。例えば、ページ内のすべての <div> 要素と <p> 要素に同じデザインを適用したいときは、次のように記述します。サンプルコード<!DOCTYPE html> <html> <head> <style>