icon
icon

HTMLで複数のチェックボックスを横並びに配置する方法を現役エンジニアが解説【初心者向け】

初心者向けにHTMLで複数のチェックボックスを横並びに配置する方法について解説しています。チェックボックス実装の基本と複数のチェックボックスを実装する方法、横並びにする方法を紹介します。画面上での表示を見てみましょう。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

監修してくれたメンター

ノマリカ

印刷会社で校閲とDTPオペレーションを5年、Web制作会社でデザイナーを8年、一般企業でWeb担当を1年経験した後、フリーランスのデザイナーとして独立。
伝わりやすくて明快なデザインを得意としている。

HTMLで複数のチェックボックスを横並びに配置する方法について、テックアカデミーのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

 

目次

 

そもそもHTMLの記述方法がわからない場合は、 HTMLの書き方について解説した記事を読むとさらに理解が深まります。

 

田島悠介

今回は、HTMLに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

複数のチェックボックスを横並びに配置する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

チェックボックスを実装する方法

チェックボックスは、inputタグのtype属性に「checkbox」と指定することで実装できます。

一般的には、HTML内で以下のように実装されます。

 

最も簡素な例

<form>
  <input type="checkbox">選択肢テキスト
  <input type="checkbox">選択肢テキスト
</form>

See the Pen
チェックボックスを実装する方法_最も簡素な例
by nomallica (@nomallica)
on CodePen.

labelタグを使用した例

labelタグを使用することで、選択肢テキスト部分でもチェックが入れられるようになります。

以下のように選択肢テキストをlabelタグで囲み、for属性の値をinputタグのid属性と合わせることで実装できます。

<form>
  <input type="checkbox" id="check1"><label for="check1">選択肢テキスト</label>
  <input type="checkbox" id="check2"><label for="check2">選択肢テキスト</label>
</form>

See the Pen
チェックボックスを実装する方法_labelタグを使用した例
by nomallica (@nomallica)
on CodePen.

さらにfieldsetタグでグループ分けした例

fieldsetタグでチェックボックスをグループ化した例が、以下の通りです。

inputタグにname属性を追加することで、グループとの関連付けができます。

<form>
  <fieldset>
    <input type="checkbox" id="check1" name="group1"><label for="check1">選択肢テキスト</label>
    <input type="checkbox" id="check2" name="group1"><label for="check2">選択肢テキスト</label>
  </fieldset>
  <fieldset>
    <input type="checkbox" id="check3" name="group2"><label for="check3">選択肢テキスト</label>
    <input type="checkbox" id="check4" name="group2"><label for="check4">選択肢テキスト</label>
  </fieldset>
</form>

See the Pen
by nomallica (@nomallica)
on CodePen.

 

縦に並んだチェックボックスを横並びに配置するには

inputタグは、CSSなどで何も指定しなければ横並びになります。

しかし、inputタグが前述のfieldsetタグや、liタグのようなブロック要素で囲まれていた場合には縦に並びます。

それらを横並びにする方法を見ていきましょう。

 

fieldsetタグでグループ分けされている場合

CSSで以下のようにdisplayプロパティにinline-blockを設定することで、横並びにできます。

※inlineではなくinline-blockを設定する理由は、幅や高さ、空きの指定がしやすいためです。

See the Pen
by nomallica (@nomallica)
on CodePen.

liタグで囲まれている場合

この場合も同様に、liタグに対してdisplayプロパティにinline-blockを設定することで、横並びにできます。

See the Pen
by nomallica (@nomallica)
on CodePen.

[PR] Webデザインで副業する学習方法を動画で公開中

まとめ

チェックボックスを表示させるinputタグはインライン要素なので、CSSなどで何も指定しなければ横並びになります。

チェックボックスが縦に並ぶのは、fieldsetタグやliタグのようなブロック要素で囲まれている場合です。

縦に並んだチェックボックスを横並びにしたい時は、inputタグを囲んでいるブロック要素に対して、CSSでdisplayプロパティにinline-blockを設定しましょう。

 

大石ゆかり

内容が分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

HTMLを学習中の方へ

これで解説は終了です、お疲れさまでした。

  • つまずかず「効率的に」学びたい
  • 副業や転職後の「現場で使える」知識やスキルを身につけたい

HTMLを学習していて、このように思ったことはありませんか?

テックアカデミーのWebデザインコースでは、第一線で活躍する「プロのWebデザイナー」が教えているので、効率的に実践的なスキルを完全オンラインでしっかり習得できます。

合格率10%の選考を通過した、選ばれたWebデザイナーの手厚いサポートを受けながら、オリジナルのWebサイト制作を学べます。

まずは一度、無料体験で学習の悩みや今後のキャリアについて話してみて、「現役Webデザイナーから教わること」を実感してみてください。

時間がない方、深く知ってから体験してみたい方は、今スグ見られる説明動画から先に視聴することをおすすめします!