カテゴリ: Bootstrap 更新日: 2026/01/05

Bootstrapで作るログイン画面!初心者でもできる中央寄せ・バリデーション・アイコン表示付き

ログイン画面テンプレート:中央寄せ・バリデーション・アイコン表示
ログイン画面テンプレート:中央寄せ・バリデーション・アイコン表示

先生と生徒の会話形式で理解しよう

生徒

「パソコン初心者なんですが、Bootstrapでログイン画面って作れますか?」

先生

「はい、大丈夫ですよ。Bootstrapには、初心者にも使いやすいテンプレートが用意されています。中央に配置したり、バリデーションやアイコンの表示も簡単です。」

生徒

「見た目も整っていて、使いやすそうですね。どうやって作ればいいんですか?」

先生

「それでは、Bootstrapのスターターテンプレートを使って、ログイン画面の作り方を丁寧に説明していきましょう!」

1. ログイン画面とは?

1. ログイン画面とは?
1. ログイン画面とは?

ログイン画面とは、ユーザーが「ユーザー名」や「パスワード」を入力して、自分専用のページに入るための入り口です。インターネット上の多くのサービスやアプリケーションで使われています。

たとえば、SNS(エスエヌエス:ソーシャルネットワーキングサービス)やオンラインショップにログインする時も、このような画面を見たことがあると思います。

2. Bootstrapとは何か?

2. Bootstrapとは何か?
2. Bootstrapとは何か?

Bootstrap(ブートストラップ)とは、Webページを簡単に「オシャレ」で「見やすく」するためのデザインツールです。たとえるなら、「料理を作るときの便利な調味料セット」のようなもので、難しいことをしなくても、綺麗な見た目が簡単に作れます。

特に初心者の方でも、すぐに使える部品(フォーム・ボタン・配置など)が揃っているのが魅力です。

3. ログイン画面を中央に表示する方法

3. ログイン画面を中央に表示する方法
3. ログイン画面を中央に表示する方法

Webページを開いたときに、画面の真ん中にログインフォームを置くと、とても見やすくて使いやすくなります。Bootstrapでは「.d-flex」「.justify-content-center」「.align-items-center」などのクラスを使うだけで簡単に実現できます。

4. 入力チェック(バリデーション)とは?

4. 入力チェック(バリデーション)とは?
4. 入力チェック(バリデーション)とは?

「バリデーション」とは、ユーザーが間違った情報を入力しないようにチェックする機能です。たとえば、「メールアドレスの形式が正しいか」や「パスワードが空欄ではないか」を確認する仕組みです。

Bootstrapでは、これも簡単に設定できます。「required」や「is-invalid」などのクラスを使って、視覚的にエラーをわかりやすく表示できます。

5. アイコンを使って視覚的にわかりやすく

5. アイコンを使って視覚的にわかりやすく
5. アイコンを使って視覚的にわかりやすく

Bootstrap Icons(ブートストラップ・アイコン)を使えば、入力欄の横に「人のマーク」や「鍵のマーク」など、視覚的に内容を示すことができます。

たとえば「<i class="bi bi-person-fill"></i>」と書けば、人のアイコンが表示されます。


<i class="bi bi-person-fill"></i>
ブラウザ表示

6. 実際にHTMLでログイン画面を作ってみよう

6. 実際にHTMLでログイン画面を作ってみよう
6. 実際にHTMLでログイン画面を作ってみよう

それでは、Bootstrapのスターターテンプレートを使って、中央寄せ・バリデーション付き・アイコン表示ありのログイン画面を作ってみましょう!


<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <title>ログイン画面</title>
  <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
  <link href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.5/font/bootstrap-icons.css" rel="stylesheet">
</head>
<body class="bg-light">
  <div class="container vh-100 d-flex justify-content-center align-items-center">
    <div class="card p-4 shadow" style="width: 100%; max-width: 400px;">
      <h2 class="text-center mb-4">ログイン</h2>
      <form novalidate>
        <div class="mb-3">
          <label for="username" class="form-label">ユーザー名</label>
          <div class="input-group has-validation">
            <span class="input-group-text"><i class="bi bi-person-fill"></i></span>
            <input type="text" class="form-control" id="username" required>
            <div class="invalid-feedback">
              ユーザー名を入力してください。
            </div>
          </div>
        </div>
        <div class="mb-3">
          <label for="password" class="form-label">パスワード</label>
          <div class="input-group has-validation">
            <span class="input-group-text"><i class="bi bi-lock-fill"></i></span>
            <input type="password" class="form-control" id="password" required>
            <div class="invalid-feedback">
              パスワードを入力してください。
            </div>
          </div>
        </div>
        <button class="btn btn-primary w-100" type="submit">ログイン</button>
      </form>
    </div>
  </div>

  <script>
    (function () {
      'use strict';
      const forms = document.querySelectorAll('form');
      Array.prototype.slice.call(forms).forEach(function (form) {
        form.addEventListener('submit', function (event) {
          if (!form.checkValidity()) {
            event.preventDefault();
            event.stopPropagation();
          }
          form.classList.add('was-validated');
        }, false);
      });
    })();
  </script>
</body>
</html>
ブラウザ表示

7. ログイン画面をカスタマイズしてみよう

7. ログイン画面をカスタマイズしてみよう
7. ログイン画面をカスタマイズしてみよう

色やサイズ、文字のフォントなどは、自分好みにカスタマイズすることもできます。たとえば、背景色を変えたり、ボタンの色を緑にしたりなど、工夫しだいで見た目を大きく変えられます。

慣れてきたら、次は「レイアウトの調整」や「レスポンシブ対応(スマートフォンでも見やすいデザイン)」などに挑戦してみましょう。

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

ログイン画面とは何をするためのページですか?

ログイン画面とは、ユーザー名やパスワードを入力して、自分専用のページにアクセスするための入口となるページです。SNSやネットショップなど、ほとんどのWebサービスで使われています。
カテゴリの一覧へ
新着記事
New1
CSS
CSS Gridテンプレート集!よく使うWebレイアウトの作り方
New2
HTML
HTML head要素とは?meta・titleの役割と基本を解説
New3
Bootstrap
Bootstrap固定比率カラム完全ガイド!.col-6・.col-md-4の使い方とベストプラクティスを初心者向けに解説
New4
CSS
CSS Gridとメディアクエリで作る!レスポンシブデザイン完全入門
人気記事
No.1
Java&Spring記事人気No1
HTML
HTMLでできること・できないこと|初心者が迷う点を整理
No.2
Java&Spring記事人気No2
CSS
CSSの入れ子構造セレクタ完全ガイド!初心者でもわかる書き方と使い方
No.3
Java&Spring記事人気No3
CSS
CSS Gridの配置を視覚的にデザイン!grid-template-areasの設計方法
No.4
Java&Spring記事人気No4
CSS
CSSの文字色と背景色の組み合わせで読みやすさアップ!初心者でもわかる可読性の改善方法
No.5
Java&Spring記事人気No5
CSS
CSSで要素のサイズを自動調整!autoとfit-contentの使い方
No.6
Java&Spring記事人気No6
Bootstrap
Bootstrap5グリッドとは?12分割の基本とrow・col・gutterを初心者向けにやさしく解説
No.7
Java&Spring記事人気No7
HTML
HTML html/head/bodyタグの役割|文書構造の基本を整理
No.8
Java&Spring記事人気No8
CSS
CSS Gridレイアウト設計術!固定幅・自動幅・割合幅を組み合わせる方法