カテゴリ: Bootstrap 更新日: 2025/12/12

Bootstrapフォームの差分を徹底解説!custom-*廃止から新フォームコントロールへの移行手順

フォームの差分:custom-*廃止→新フォームコントロールへの移行手順
フォームの差分:custom-*廃止→新フォームコントロールへの移行手順

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

生徒

「先生、Bootstrapのフォームを作ろうとしたら、ネットのサンプルでcustom-selectとかcustom-fileっていうクラスを見つけました。でも、Bootstrap5では動かないみたいなんです。どうしてですか?」

先生

「いい観察ですね。Bootstrap4まではcustom-*というクラスが使われていましたが、Bootstrap5では廃止され、新しいフォーム用のクラスに統一されています。」

生徒

「廃止ってことは、もう使えないんですか?」

先生

「はい、Bootstrap5では使えません。代わりにform-controlform-selectといったクラスで統一されていて、見た目もシンプルに扱えるようになっていますよ。」

1. custom-*が廃止された理由

1. custom-*が廃止された理由
1. custom-*が廃止された理由

Bootstrap4では、フォームの見た目を整えるためにcustom-selectcustom-fileといった特別なクラスが存在しました。しかし、クラスが増えると初心者にとって覚えることが多くなり、またブラウザによって動作が不安定になることもありました。

そこでBootstrap5では、フォームのクラスが整理され、より直感的に使えるように改善されました。無駄なクラスを減らして、form-controlform-selectといった統一された名前に変わったのです。

2. セレクトボックスの移行方法

2. セレクトボックスの移行方法
2. セレクトボックスの移行方法

Bootstrap4までは、ドロップダウン式のセレクトボックスにcustom-selectを使っていました。Bootstrap5ではこれがform-selectに変わりました。


<!-- Bootstrap4の例 -->
<select class="custom-select">
  <option selected>選択してください</option>
  <option value="1">選択肢1</option>
  <option value="2">選択肢2</option>
</select>

<!-- Bootstrap5の例 -->
<select class="form-select">
  <option selected>選択してください</option>
  <option value="1">選択肢1</option>
  <option value="2">選択肢2</option>
</select>
ブラウザ表示

このように、クラス名をcustom-selectからform-selectに書き換えるだけで、Bootstrap5に対応できます。

3. ファイル入力の移行方法

3. ファイル入力の移行方法
3. ファイル入力の移行方法

ファイル選択フォームも同じように変更されています。Bootstrap4ではcustom-filecustom-file-labelを組み合わせて使っていましたが、Bootstrap5ではよりシンプルになり、form-controlに一本化されました。


<!-- Bootstrap4の例 -->
<div class="custom-file">
  <input type="file" class="custom-file-input" id="fileUpload">
  <label class="custom-file-label" for="fileUpload">ファイルを選択</label>
</div>

<!-- Bootstrap5の例 -->
<input class="form-control" type="file" id="fileUpload">
ブラウザ表示

ラベルを別に書かなくても、ブラウザ標準のUIがBootstrap風にデザインされるようになりました。

4. チェックボックスとラジオボタン

4. チェックボックスとラジオボタン
4. チェックボックスとラジオボタン

Bootstrap4ではcustom-checkboxcustom-radioを使っていましたが、Bootstrap5ではform-checkに統一されました。よりシンプルで、HTMLの構造も分かりやすくなっています。


<!-- Bootstrap4の例 -->
<div class="custom-control custom-checkbox">
  <input type="checkbox" class="custom-control-input" id="check1">
  <label class="custom-control-label" for="check1">チェックしてください</label>
</div>

<!-- Bootstrap5の例 -->
<div class="form-check">
  <input class="form-check-input" type="checkbox" id="check1">
  <label class="form-check-label" for="check1">チェックしてください</label>
</div>
ブラウザ表示

ラジオボタンも同じ書き方で、クラス名をform-checkにするだけです。

5. Bootstrap5フォームへの移行のコツ

5. Bootstrap5フォームへの移行のコツ
5. Bootstrap5フォームへの移行のコツ

フォーム関連のcustom-*クラスはすべて廃止され、form-controlform-selectform-checkといった統一的な名前に整理されました。

移行のときは、まずHTMLの中に古いクラスが残っていないか確認し、それぞれ対応する新しいクラスに置き換えることが大切です。クラス名を正しく直すだけで、見た目がBootstrap5の最新デザインに変わります。

プログラミング未経験の方でも、クラス名を変えるだけなら難しくありません。書き換えながらブラウザで確認していけば、安心して移行できます。

まとめ

まとめ
まとめ

Bootstrapフォーム移行で押さえておきたい全体像

今回の記事では、Bootstrapフォームにおける大きな変更点として、 Bootstrap4まで使われていたcustom-*クラスが廃止され、 Bootstrap5では新しいフォームコントロールに統一された流れを詳しく解説しました。 フォームはお問い合わせ、ログイン、会員登録、管理画面など、 ほとんどのWebサイトで必ず使われる重要な要素です。 そのため、Bootstrapのバージョンアップに伴うフォーム仕様の違いを正しく理解しておくことは、 初心者にとっても非常に大切なポイントになります。

Bootstrap4では、見た目を整えるためにcustom-selectcustom-filecustom-checkboxなど、 多くの専用クラスが用意されていました。 しかしクラスが増えすぎることで、HTML構造が複雑になり、 学習コストが高くなってしまうという課題がありました。 そこでBootstrap5では設計が見直され、 form-controlform-selectform-checkといった分かりやすい名前に整理されています。

この変更により、フォームのHTMLは以前よりもシンプルになり、 初心者でも読みやすく、書きやすい構造になりました。 また、ブラウザ標準の挙動を活かしたデザインに近づいたことで、 環境差による表示崩れも起こりにくくなっています。 Bootstrap5フォームへの移行は、 見た目の刷新だけでなく、保守性や安定性の向上にもつながっています。

custom-*廃止後の正しい置き換え方

移行作業で重要なのは、「何をどう置き換えるか」を正しく理解することです。 セレクトボックスはcustom-selectからform-selectへ、 ファイル入力はcustom-fileからform-controlへ、 チェックボックスやラジオボタンはcustom-control系から form-checkへと変更します。 基本的にはクラス名を置き換えるだけで動作するケースが多く、 HTMLやJavaScriptの知識が少ない方でも対応しやすい点が特徴です。

古いサンプルコードをそのままコピーしてしまうと、 Bootstrap5ではスタイルが当たらず戸惑うことがあります。 その場合は、まずcustom-という名前が残っていないかを確認し、 新しいフォームクラスに書き換えてみましょう。 それだけで、最新のBootstrapフォームデザインが適用されるはずです。

まとめ用サンプルプログラム


<form class="container py-4">
    <h1 class="mb-3">Bootstrap5フォーム確認サンプル</h1>

    <div class="mb-3">
        <label class="form-label">名前</label>
        <input type="text" class="form-control" placeholder="名前を入力">
    </div>

    <div class="mb-3">
        <label class="form-label">選択肢</label>
        <select class="form-select">
            <option selected>選択してください</option>
            <option value="1">選択肢1</option>
            <option value="2">選択肢2</option>
        </select>
    </div>

    <div class="mb-3">
        <input class="form-control" type="file">
    </div>

    <div class="form-check mb-3">
        <input class="form-check-input" type="checkbox" id="checkSample">
        <label class="form-check-label" for="checkSample">
            内容に同意する
        </label>
    </div>

    <button class="btn btn-primary">送信</button>
</form>
ブラウザ表示
先生と生徒の振り返り会話

生徒

「Bootstrap5ではフォームのクラスがかなり整理されているんですね。 custom-*がなくなった理由がよく分かりました。」

先生

「そうですね。初心者でも扱いやすくするために、 クラス名や構造がシンプルになっているんです。」

生徒

「古いサンプルが動かなくても、 クラス名を置き換えれば対応できると分かって安心しました。」

先生

「その理解で大丈夫です。 今回学んだフォーム移行の考え方は、 Bootstrapを使ったWeb制作で必ず役に立ちますよ。」

2026年最新 スキルアップ・実践セミナー

【60分集中】CSSを1行も書かない!?Bootstrap 5ユーティリティクラス活用で開発工数を50%削減

「スピード」が武器になる。Bootstrap 5で商用クオリティのWebサイトを高速構築。

本講座では、世界シェアNo.1のフレームワークBootstrap 5を使いこなし、ゼロからレスポンシブサイトを組み上げる「現場最速のワークフロー」を学びます。単なる導入に留まらず、ユーティリティクラスを活用した効率化と、実務で必須となるカスタマイズ技法を60分で完全習得します。

具体的なワークショップ内容と環境

【つくるもの】
モダンなランディングページ(LP)やダッシュボードのプロトタイプを作成します。ナビゲーション、ヒーローセクション、カードレイアウト、フッターなど、Bootstrapのコンポーネントを組み合わせて「一瞬で形にする」感動を体験してください。

【開発環境】
VS CodeにBootstrap 5専用のSnippet(補完機能)を導入し、手入力を最小限にする環境を構築。最新のCDN利用法や、表示速度(Core Web Vitals)を意識した最適な読み込み設定など、プロの初期設定を伝授します。

この60分で得られる3つの革新スキル

1. グリッドシステムの完全マスター

スマホ・タブレット・PCでレイアウトを自由自在に切り替える「ブレイクポイント」の極意を学びます。

2. ユーティリティクラスによる爆速デザイン

CSSを1行も書かずに、マージン・パディング・カラーを制御。開発工数を半分以下にする実戦術を習得します。

3. 脱・標準デザインのカスタマイズ

「Bootstrap感」を消し、独自のブランドイメージに合わせるための、上書きの作法とデザインの整え方を伝授します。

※本講座は、HTML/CSSの基本を理解した方向けの「実践加速講座」です。制作会社のコーダーや副業フリーランスとして「案件の回転率」を上げ、市場価値を最大化させたい方をモクモクがバックアップします。

【60分集中】CSSを1行も書かない!?Bootstrap 5ユーティリティクラス活用で開発工数を50%削減

Bootstrap 5を楽しみながら、一緒に学びましょう!

各回少人数・マンツーマン形式で徹底サポート

このセミナーの詳細・お申し込みはこちら
カテゴリの一覧へ
新着記事
New1
CSS
CSSのcolumn-countを完全ガイド!初心者でもわかる複数列レイアウトの作り方
New2
CSS
CSSのz-indexとposition完全ガイド!初心者でもわかる要素を重ねる方法
New3
Bootstrap
Bootstrapオフキャンバス入門:.offcanvasと.offcanvas-start・end・top・bottomの基本をやさしく解説
New4
CSS
CSSのoverflowプロパティ完全ガイド!初心者でもわかるvisible・hidden・scroll・autoの違い
人気記事
No.1
Java&Spring記事人気No1
CSS
CSSで文字の間隔を調整する方法!初心者でもわかるletter-spacingとword-spacingの使い方
No.2
Java&Spring記事人気No2
CSS
CSSで要素のサイズを自動調整!autoとfit-contentの使い方
No.3
Java&Spring記事人気No3
CSS
CSSのmarginとpaddingの違いとは?初心者でもわかるボックス間のスペース調整の基本
No.4
Java&Spring記事人気No4
Bootstrap
Bootstrap Iconsのライセンスと商用利用の注意点【著作権と表記を初心者向けに解説】
No.5
Java&Spring記事人気No5
CSS
CSSのoverflowプロパティ完全ガイド!初心者でもわかるvisible・hidden・scroll・autoの違い
No.6
Java&Spring記事人気No6
CSS
CSSの文字色と背景色をやさしく解説!初心者でもわかる基本の設定方法
No.7
Java&Spring記事人気No7
HTML
HTMLのliタグとは?初心者でもわかるul・ol内での正しい役割を完全解説
No.8
Java&Spring記事人気No8
CSS
CSSの状態によるセレクタ完全ガイド!初心者でもわかる:checkedと:disabledの使い方