CSS
 Computer >> コンピューター >  >> プログラミング >> CSS

CSSで送信ボタン(input type="submit")をスタイリングする方法

HTMLフォームの送信ボタン(input type="submit")やリセットボタンは、CSSの属性セレクタを使用して自由にデザインできます。この記事では、属性セレクタ input[type="submit"] を使った基本的なスタイリング手順と、実装例を解説します。

基本的なCSSセレクタ

送信ボタンのみを対象にスタイルを適用するには、以下のように属性セレクタを指定します。

input[type="submit"] {
  /* ここにスタイルを記述 */
}

同様に、input[type="reset"] でリセットボタン、input[type="button"] で汎用ボタンを個別に装飾可能です。

実装例:オレンジ色の送信ボタン

以下のコードは、送信ボタンに背景色、文字色、余白、カーソル形状などを設定した完全なHTML例です。

<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <title>送信ボタンのスタイリング例</title>
  <style>
    input[type="submit"] {
      background-color: #ff9800; /* オレンジ */
      border: none;
      color: #ffffff;
      padding: 12px 24px;
      margin: 16px 0;
      font-size: 16px;
      font-weight: bold;
      border-radius: 4px;
      cursor: pointer;
      transition: background-color 0.3s ease;
    }
    input[type="submit"]:hover {
      background-color: #f57c00;
    }
    input[type="submit"]:active {
      background-color: #e65100;
    }
    form {
      max-width: 400px;
      margin: 20px auto;
      padding: 20px;
      border: 1px solid #ddd;
      border-radius: 8px;
    }
    label {
      display: block;
      margin-bottom: 8px;
      font-weight: bold;
    }
    input[type="text"] {
      width: 100%;
      padding: 10px;
      margin-bottom: 16px;
      border: 1px solid #ccc;
      border-radius: 4px;
      box-sizing: border-box;
    }
  </style>
</head>
<body>
  <form action="#" method="post">
    <label for="subject">件名</label>
    <input type="text" id="subject" name="subject" placeholder="件名を入力" required>

    <label for="student">受講者名</label>
    <input type="text" id="student" name="student" placeholder="受講者名を入力" required>

    <input type="submit" value="送信する">
  </form>
</body>
</html>

ポイントとベストプラクティス

  • 属性セレクタの活用: input[type="submit"] のように指定することで、クラス名を付与せずに特定のタイプのみを装飾できます。
  • ホバー・アクティブ状態: :hover:active:focus などの疑似クラスを併用し、インタラクション時のフィードバックを提供しましょう。
  • アクセシビリティ: cursor: pointer でクリック可能であることを示し、十分なコントラスト比(WCAG AA以上)を確保してください。
  • リセット/ノーマライズ: ブラウザ標準スタイル(ボーダー、背景、パディング)を border: noneappearance: none でリセットしてから独自スタイルを適用すると、クロスブラウザで安定します。

応用:ボタン要素(<button>)との使い分け

<button type="submit"> を使用する場合は、button[type="submit"] または単に button セレクタでスタイルを当てられます。<button> は内部にHTML(アイコンや複数行テキスト)を含められるため、より柔軟なデザインが可能です。用途に合わせて使い分けてください。

  1. CSSでhr要素(水平線)のスタイルを設定する方法をわかりやすく解説

    CSSを使ってhr要素(水平線)のスタイルを設定するには、borderプロパティを活用します。hr要素はデフォルトではシンプルな1本の線として表示されますが、border-topやborder-radiusなどを組み合わせることで、実線・破線・二重線・点線・角丸など、さまざまなデザインに自由にカスタマイズできます。以下に、代表的な5種類の水平線スタイルを実装したサンプルコードを紹介します。サンプルコード<!DOCTYPE html> <html> <meta name="viewport" content="width=device-

  2. CSSでラベルのスタイルを設定する方法|色分けラベルの作り方

    CSSを使用すれば、<span>タグにクラスを割り当てるだけで、色分けされた見やすいラベル(バッジ)を簡単に作成できます。ステータスやカテゴリの表示に役立つため、Webアプリケーションや管理画面などでよく使われるテクニックです。 サンプルコード 以下は、CSSでラベルのスタイルを設定する具体的なコード例です。 <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width, initial-scale=1"