<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>HTML | ビズドットオンライン</title>
	<atom:link href="https://it-biz.online/category/web-design/html/feed/" rel="self" type="application/rss+xml" />
	<link>https://it-biz.online</link>
	<description></description>
	<lastBuildDate>Tue, 26 May 2026 09:27:28 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://it-biz.online/wp-content/uploads/2019/10/cropped-4a332f05ade4ac7bb3c46c472cb5eac8-32x32.png</url>
	<title>HTML | ビズドットオンライン</title>
	<link>https://it-biz.online</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>【HTML】tableタグ：テーブル（表）の作成方法を３分でわかりやすく</title>
		<link>https://it-biz.online/web-design/table/</link>
		
		<dc:creator><![CDATA[ビズドットオンライン]]></dc:creator>
		<pubDate>Thu, 03 Jan 2019 00:00:00 +0000</pubDate>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[WEBデザイン]]></category>
		<category><![CDATA[Web開発]]></category>
		<category><![CDATA[プログラミング]]></category>
		<guid isPermaLink="false">https://it-biz.online/?p=2825</guid>

					<description><![CDATA[HTMLでテーブル（表）を作成するtableタグ（&#60;table&#62;タグ・&#60;tr&#62;タグ・&#60;th&#62;タグ・&#60;td&#62;タグ）の基本・意味・使い方を初心者向けにわかりやすく解説します。  [&#8230;]]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="800" height="1131" src="https://it-biz.online/wp-content/uploads/2019/01/image-800x1131.png" alt="" class="wp-image-11137" srcset="https://it-biz.online/wp-content/uploads/2019/01/image-800x1131.png 800w, https://it-biz.online/wp-content/uploads/2019/01/image-500x707.png 500w, https://it-biz.online/wp-content/uploads/2019/01/image-300x424.png 300w, https://it-biz.online/wp-content/uploads/2019/01/image-768x1085.png 768w, https://it-biz.online/wp-content/uploads/2019/01/image.png 1055w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p class="wp-block-paragraph">HTMLでテーブル（表）を作成するtableタグ（<strong>&lt;table&gt;タグ・&lt;tr&gt;タグ・&lt;th&gt;タグ・&lt;td&gt;タグ</strong>）の基本・意味・使い方を初心者向けにわかりやすく解説します。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;table>
  &lt;tr>
    &lt;th>見出し1&lt;/th>
    &lt;th>見出し2&lt;/th>
  &lt;/tr>
  &lt;tr>
    &lt;td>データ1&lt;/td>
    &lt;td>データ2&lt;/td>
  &lt;/tr>
  &lt;tr>
    &lt;td>データ3&lt;/td>
    &lt;td>データ4&lt;/td>
  &lt;/tr>
&lt;/table></pre>



<figure class="wp-block-image aligncenter size-full"><img decoding="async" width="604" height="225" src="https://it-biz.online/wp-content/uploads/2023/12/image-19.png" alt="HTML tableタグ" class="wp-image-8683" srcset="https://it-biz.online/wp-content/uploads/2023/12/image-19.png 604w, https://it-biz.online/wp-content/uploads/2023/12/image-19-500x186.png 500w, https://it-biz.online/wp-content/uploads/2023/12/image-19-300x112.png 300w" sizes="(max-width: 604px) 100vw, 604px" /><figcaption class="wp-element-caption">図1:HTML tableタグ</figcaption></figure>



<p class="wp-block-paragraph">tableタグはデータを行と列の形式で整理し、表示するために使用されるHTML要素。テーブルは、情報を視覚的に整理して比較しやすくすることができ、一般的には数値データや、関連する項目のリストなどを表示するのに適しています。</p>



<div class="wp-block-cocoon-blocks-tab-caption-box-1 tab-caption-box block-box cocoon-block-tab-caption-box"><div class="tab-caption-box-label block-box-label box-label fab-edit"><span class="tab-caption-box-label-text block-box-label-text box-label-text">このページで学べる内容</span></div><div class="tab-caption-box-content block-box-content box-content">
<div class="wp-block-cocoon-blocks-iconlist-box iconlist-box blank-box list-hand-o-right block-box"><div class="iconlist-title"></div>
<ul class="wp-block-list">
<li>HTMLのtableタグの使い方（テーブル・表の作成方法）
<ul class="wp-block-list">
<li><strong>&lt;table&gt;タグ・&lt;tr&gt;タグ・&lt;th&gt;タグ・&lt;td&gt;タグ</strong></li>
</ul>
</li>



<li>テーブル・表のデザイン方法</li>
</ul>
</div>
</div></div>



<p class="wp-block-paragraph">Webエンジニアを目指す方であれば<strong><span class="marker-under">知らないと恥ずかしい超・基本知識の１つ</span></strong>です。是非最後までご覧ください。</p>



<p class="has-text-align-center wp-block-paragraph"><span class="badge">参考</span>　<a href="https://it-biz.online/web-design/html-rule/">HTMLの基本構文ルール</a></p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">HTML：テーブル（表）の定義方法</a><ol><li><a href="#toc2" tabindex="0">HTML：&lt;table&gt;タグの使い方</a></li><li><a href="#toc3" tabindex="0">HTML：&lt;tr&gt;タグの使い方</a></li><li><a href="#toc4" tabindex="0">HTML：&lt;th&gt;タグの使い方</a></li><li><a href="#toc5" tabindex="0">HTML：&lt;td&gt;タグの使い方</a></li></ol></li><li><a href="#toc6" tabindex="0">現代のWeb環境におけるテーブル（表）の重要性</a><ol><li><a href="#toc7" tabindex="0">限定的な使用</a></li><li><a href="#toc8" tabindex="0">最適な使用</a></li></ol></li><li><a href="#toc9" tabindex="0">HTML：テーブルのデザイン</a><ol><li><a href="#toc10" tabindex="0">テーブルに罫線をつける方法（border属性）</a></li><li><a href="#toc11" tabindex="0">枠線の色を変える（bordercolor）</a></li><li><a href="#toc12" tabindex="0">背景色を変更する方法（bgcolor属性）</a></li><li><a href="#toc13" tabindex="0">セル間のスペースを指定（cellspacing属性）</a></li><li><a href="#toc14" tabindex="0">セル内のスペースを指定（cellpadding属性）</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">HTML：テーブル（表）の定義方法</span></h2>



<p class="wp-block-paragraph">tableタグを使ってテーブルを作成する際には、次のようなタグを組み合わせて使用します。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">テーブルを作るには、tableタグだけではなく、その要素を表す <strong>&lt;tr&gt;タグ・&lt;th&gt;タグ・&lt;td&gt;タグ</strong>が必要になります。</p>
</div></div>



<p class="wp-block-paragraph">全てを暗記する必要はありませんが、それぞれのタグがどのように利用され、どのような意味を持つのか？をまずは頭に入れておきましょう。</p>



<figure class="wp-block-image aligncenter size-large"><img decoding="async" width="859" height="399" src="https://it-biz.online/wp-content/uploads/2019/12/image-52.png" alt="html table" class="wp-image-2834" srcset="https://it-biz.online/wp-content/uploads/2019/12/image-52.png 859w, https://it-biz.online/wp-content/uploads/2019/12/image-52-300x139.png 300w, https://it-biz.online/wp-content/uploads/2019/12/image-52-500x232.png 500w, https://it-biz.online/wp-content/uploads/2019/12/image-52-768x357.png 768w, https://it-biz.online/wp-content/uploads/2019/12/image-52-800x372.png 800w, https://it-biz.online/wp-content/uploads/2019/12/image-52-304x141.png 304w" sizes="(max-width: 859px) 100vw, 859px" /><figcaption class="wp-element-caption">図2：tableタグ</figcaption></figure>



<ul class="wp-block-list is-style-icon-list-circle has-list-style">
<li><code><span class="bold-blue">&lt;table&gt;</span></code>
<ul class="wp-block-list">
<li><strong>テーブル<span class="bold-blue">全体</span>を定義</strong>します。テーブルはこのタグで始まり、<code>&lt;/table&gt;</code>で終わります。</li>
</ul>
</li>



<li><code><span class="bold-blue">&lt;tr&gt;</span></code>
<ul class="wp-block-list">
<li class="is-style-bottom-margin-2em has-bottom-margin"><strong>テーブルの<span class="bold-blue">行</span>を定義</strong>するために使用されるタグです。<br>→<strong>Table Row</strong> (テーブルの行) の略です。「ここから新しい行が始まりますよ」という意味。</li>
</ul>
</li>



<li><code><span class="bold-blue">&lt;th&gt;</span></code>
<ul class="wp-block-list">
<li class="is-style-bottom-margin-2em has-bottom-margin"><strong>テーブルの<span class="bold-blue">見出しセル</span>を定義</strong>するために使用されるタグで、通常は行や列のラベルに使用されます。<br>→<strong>Table Header</strong> (テーブルの見出し) の略です。行の中でも「見出し」となるセルに使います。</li>
</ul>
</li>



<li><code><span class="bold-blue">&lt;td&gt;</span></code>
<ul class="wp-block-list">
<li class="is-style-bottom-margin-2em has-bottom-margin"><strong>テーブルの<span class="bold-blue">データセル</span>を定義</strong>するために使用されるタグで、実際のデータを表します。<br>→<strong>Table Data</strong> (テーブルのデータ) の略です。行の中でも「データ」となるセルに使います。<br></li>
</ul>
</li>
</ul>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">最初のうちはちょっと複雑に感じるかもしれません。順を追って理解していきましょう。</p>
</div></div>



<h3 class="wp-block-heading"><span id="toc2">HTML：&lt;table&gt;タグの使い方</span></h3>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="848" height="388" src="https://it-biz.online/wp-content/uploads/2019/12/image-53.png" alt="html table" class="wp-image-2835" srcset="https://it-biz.online/wp-content/uploads/2019/12/image-53.png 848w, https://it-biz.online/wp-content/uploads/2019/12/image-53-300x137.png 300w, https://it-biz.online/wp-content/uploads/2019/12/image-53-500x229.png 500w, https://it-biz.online/wp-content/uploads/2019/12/image-53-768x351.png 768w, https://it-biz.online/wp-content/uploads/2019/12/image-53-800x366.png 800w, https://it-biz.online/wp-content/uploads/2019/12/image-53-304x139.png 304w" sizes="(max-width: 848px) 100vw, 848px" /><figcaption class="wp-element-caption">図3:HTML tableタグ</figcaption></figure>



<p class="wp-block-paragraph">&lt;table&gt;タグは、テーブル（表）を作成するタグです。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">イメージとして<strong>「ここにテーブル（表）を作成しますよ！」という宣言</strong>をするだけの役割を担っていると考えてOK。</p>
</div></div>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;table>
&lt;!-- ここに行数や見出しなどを定義していく -->
&lt;/table></pre>



<div class="wp-block-cocoon-blocks-tab-caption-box-1 tab-caption-box block-box cocoon-block-tab-caption-box"><div class="tab-caption-box-label block-box-label box-label fab-lightbulb"><span class="tab-caption-box-label-text block-box-label-text box-label-text">tableタグの基本</span></div><div class="tab-caption-box-content block-box-content box-content">
<div class="wp-block-cocoon-blocks-iconlist-box iconlist-box blank-box list-caret-right block-box"><div class="iconlist-title"></div>
<ul class="wp-block-list">
<li><span class="bold-blue">tableタグの基本構造</span>
<ul class="wp-block-list">
<li class="is-style-bottom-margin-1em has-bottom-margin">HTMLテーブルは、&lt;table&gt;タグで始まり、&lt;/table&gt;タグで終わります。テーブル内には、行と列を定義するためのタグが必要。</li>
</ul>
</li>



<li><span class="bold-blue">行と列の定義</span>
<ul class="wp-block-list">
<li>行: &lt;tr&gt;タグ (table row) を使って、テーブルの行を定義します。</li>



<li>列: &lt;td&gt;タグ (table data) または &lt;th&gt;タグ (table header) を使って、テーブルの列を定義します。通常、&lt;td&gt;タグはデータセルを、&lt;th&gt;タグは見出しセルを表します。</li>
</ul>
</li>
</ul>
</div>
</div></div>



<h3 class="wp-block-heading"><span id="toc3">HTML：&lt;tr&gt;タグの使い方</span></h3>



<figure class="wp-block-image aligncenter size-large is-resized"><img loading="lazy" decoding="async" width="850" height="367" src="https://it-biz.online/wp-content/uploads/2019/12/image-55.png" alt="html tr" class="wp-image-2837" style="width:840px;height:auto" srcset="https://it-biz.online/wp-content/uploads/2019/12/image-55.png 850w, https://it-biz.online/wp-content/uploads/2019/12/image-55-300x130.png 300w, https://it-biz.online/wp-content/uploads/2019/12/image-55-500x216.png 500w, https://it-biz.online/wp-content/uploads/2019/12/image-55-768x332.png 768w, https://it-biz.online/wp-content/uploads/2019/12/image-55-800x345.png 800w, https://it-biz.online/wp-content/uploads/2019/12/image-55-304x131.png 304w" sizes="(max-width: 850px) 100vw, 850px" /><figcaption class="wp-element-caption">図4：HTML tr</figcaption></figure>



<p class="wp-block-paragraph">&lt;tr&gt;タグは<strong><span class="marker-under">テーブルの行数を指定するタグ</span></strong>です。&lt;tr&gt;タグを設置した分だけ、行数が増えていくことになります。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">上記の例で言えば、<strong>&lt;tr&gt;タグは4つ</strong>（＝４行あるので）設置していることになります。必要に応じて、何個でも設置することが可能です。</p>
</div></div>



<p class="wp-block-paragraph">trとは「<big><span style="color:#cf2e2e" class="color">T</span></big>able <big><span style="color:#cf2e2e" class="color">R</span></big>ow」の略です。Rowとは、行という意味を持つため迷ったときは略す前の名称を思い出すと良いでしょう。&lt;tr&gt;タグは、&lt;table&gt;タグの中にネストして利用します。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;table>
  &lt;tr>
&lt;!-- ここに表の値などを定義していく -->
  &lt;/tr>
  &lt;tr>
&lt;!-- ここに表の値などを定義していく -->
  &lt;/tr>
&lt;/table></pre>



<h3 class="wp-block-heading"><span id="toc4">HTML：&lt;th&gt;タグの使い方</span></h3>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="844" height="370" src="https://it-biz.online/wp-content/uploads/2019/12/image-56.png" alt="html th" class="wp-image-2838" srcset="https://it-biz.online/wp-content/uploads/2019/12/image-56.png 844w, https://it-biz.online/wp-content/uploads/2019/12/image-56-300x132.png 300w, https://it-biz.online/wp-content/uploads/2019/12/image-56-500x219.png 500w, https://it-biz.online/wp-content/uploads/2019/12/image-56-768x337.png 768w, https://it-biz.online/wp-content/uploads/2019/12/image-56-800x351.png 800w, https://it-biz.online/wp-content/uploads/2019/12/image-56-304x133.png 304w" sizes="(max-width: 844px) 100vw, 844px" /><figcaption class="wp-element-caption">図5：HTML th</figcaption></figure>



<p class="wp-block-paragraph">&lt;th&gt;タグは、テーブルの見出しやタイトルを定義します。</p>



<p class="wp-block-paragraph">&lt;th&gt;タグは「<big><strong>T</strong></big>able <strong><big>H</big></strong>eader」の略であり、&lt;tr&gt;タグの中にネストして利用します。なお、&lt;th&gt;タグは見出し・タイトルを定義するタグであるため、テキストは<strong>太字</strong>かつ<strong>中央寄せ</strong>で表示されます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;table>
  &lt;tr>
    &lt;th>国&lt;/th>
    &lt;th>通貨&lt;/th>
    &lt;th>言語&lt;/th>
  &lt;/tr>
  &lt;tr>
&lt;!-- ここに表の値を定義していく -->
  &lt;/tr>
&lt;/table></pre>



<h3 class="wp-block-heading"><span id="toc5">HTML：&lt;td&gt;タグの使い方</span></h3>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="852" height="377" src="https://it-biz.online/wp-content/uploads/2019/12/image-57.png" alt="HTML td" class="wp-image-2840" srcset="https://it-biz.online/wp-content/uploads/2019/12/image-57.png 852w, https://it-biz.online/wp-content/uploads/2019/12/image-57-300x133.png 300w, https://it-biz.online/wp-content/uploads/2019/12/image-57-500x221.png 500w, https://it-biz.online/wp-content/uploads/2019/12/image-57-768x340.png 768w, https://it-biz.online/wp-content/uploads/2019/12/image-57-800x354.png 800w, https://it-biz.online/wp-content/uploads/2019/12/image-57-304x135.png 304w" sizes="(max-width: 852px) 100vw, 852px" /><figcaption class="wp-element-caption">図6：HTML td</figcaption></figure>



<p class="wp-block-paragraph"><strong>&lt;td&gt;タグ</strong>は「Table Data」の略で、テーブルセルの内容を定義します。&lt;tr&gt;タグの中にネストして利用します。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;table>
  &lt;tr>
    &lt;th>国&lt;/th>
    &lt;th>通貨&lt;/th>
    &lt;th>言語&lt;/th>
  &lt;/tr>
  &lt;tr>
    &lt;td>日本&lt;/td>
    &lt;td>円&lt;/td>
    &lt;td>言語&lt;/td>
  &lt;/tr>
  &lt;tr>
    &lt;td>アメリカ&lt;/td>
    &lt;td>＄&lt;/td>
    &lt;td>英語&lt;/td>
  &lt;/tr>
  &lt;tr>
    &lt;td>イギリス&lt;/td>
    &lt;td>￡&lt;/td>
    &lt;td>英語&lt;/td>
  &lt;/tr>
&lt;/table></pre>



<p class="wp-block-paragraph">こちらのコードを実行した結果がこちら。</p>



<figure class="wp-block-image aligncenter size-large"><img loading="lazy" decoding="async" width="244" height="180" src="https://it-biz.online/wp-content/uploads/2019/12/image-58.png" alt="" class="wp-image-2842" srcset="https://it-biz.online/wp-content/uploads/2019/12/image-58.png 244w, https://it-biz.online/wp-content/uploads/2019/12/image-58-214x158.png 214w" sizes="(max-width: 244px) 100vw, 244px" /><figcaption class="wp-element-caption">図7：テーブル（表）の表示結果</figcaption></figure>



<p class="wp-block-paragraph">このように、<strong>&lt;table&gt;タグ・&lt;tr&gt;タグ・&lt;th&gt;タグ・&lt;td&gt;タグ</strong>の４つを利用することでHTMLでテーブル（表）を定義することが可能になります。</p>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box memo-box">
<div class="wp-block-cocoon-blocks-iconlist-box iconlist-box blank-box list-caret-right block-box"><div class="iconlist-title">HTML：テーブル（表）の基本</div>
<ul class="wp-block-list">
<li class="is-style-bottom-margin-2em has-bottom-margin">HTMLのtableタグは、データを行と列の形式で整理し、表示するために使用されるHTML要素。</li>



<li class="is-style-bottom-margin-2em has-bottom-margin">テーブルは、情報を視覚的に整理して比較しやすくすることができ、一般的には数値データや、関連する項目のリストなどを表示するのに適している。</li>



<li>tableタグを使ってテーブルを作成する際には、以下のタグを組み合わせて使用します。</li>
</ul>
</div>



<div class="wp-block-cocoon-blocks-iconlist-box iconlist-box blank-box list-hand-o-right block-box"><div class="iconlist-title">テーブル定義を行う際の基本タグ</div>
<ul class="wp-block-list">
<li class="is-style-bottom-margin-1em has-bottom-margin"><code><span class="bold-blue">&lt;table&gt;</span></code><br>テーブル全体を定義します。テーブルはこのタグで始まり、<code>&lt;/table&gt;</code>で終わります。</li>



<li class="is-style-bottom-margin-1em has-bottom-margin"><code><span class="bold-blue">&lt;tr&gt;</span></code><br>テーブルの行を定義するために使用されるタグです。</li>



<li class="is-style-bottom-margin-1em has-bottom-margin"><code><span class="bold-blue">&lt;th&gt;</span></code><br>テーブルの見出しセルを定義するために使用されるタグで、通常は行や列のラベルに使用されます。</li>



<li><code><span class="bold-blue">&lt;td&gt;</span></code><br>テーブルのデータセルを定義するために使用されるタグで、実際のデータを表します。</li>
</ul>
</div>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;table>
  &lt;tr>
    &lt;th>見出し1&lt;/th>
    &lt;th>見出し2&lt;/th>
  &lt;/tr>
  &lt;tr>
    &lt;td>データ1&lt;/td>
    &lt;td>データ2&lt;/td>
  &lt;/tr>
  &lt;tr>
    &lt;td>データ3&lt;/td>
    &lt;td>データ4&lt;/td>
  &lt;/tr>
&lt;/table></pre>
</div>



<h2 class="wp-block-heading"><span id="toc6">現代のWeb環境におけるテーブル（表）の重要性</span></h2>



<p class="wp-block-paragraph">たまに、現代のWeb環境においてはテーブル（tableタグ）はもはや不要である？という意見を見かけますが、以下のような観点を踏まえると依然として重要なタグの１つであると言えます。</p>



<ol class="wp-block-list is-style-numeric-list-enclosed has-list-style">
<li><strong>データの整理と表示</strong>
<ul class="wp-block-list">
<li class="is-style-bottom-margin-2em has-bottom-margin">HTMLの表はデータを整理し、読みやすい形式で表示するのに適しています。例えば、統計データ、スケジュール、比較リストなどが挙げられます。</li>
</ul>
</li>



<li><strong>アクセシビリティ</strong>
<ul class="wp-block-list">
<li class="is-style-bottom-margin-2em has-bottom-margin">正しくマークアップされた表は、スクリーンリーダーを使用する視覚障害者に対して、情報の構造を明確に伝えることができます。</li>
</ul>
</li>



<li><strong>互換性と標準化</strong>
<ul class="wp-block-list">
<li>ほとんどのブラウザでサポートされており、異なるデバイスやブラウザ間で一貫した表示を提供します。</li>
</ul>
</li>
</ol>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">ちょっと寄り道的に解説すると、昔は<strong>テーブル要素をページのレイアウトを整えるために利用する</strong>手法が流行った時期があるのですが、もうその目的では利用しませんよ・・・！ということを勘違いしてしまうと不要論につながってしまいます。</p>
</div></div>



<h3 class="wp-block-heading"><span id="toc7">限定的な使用</span></h3>



<ul class="wp-block-list">
<li><strong>レイアウトツールとしての使用の減少</strong>
<ul class="wp-block-list">
<li>過去にはWebページのレイアウト作成に広く使われていましたが、現在ではCSSフレックスボックスやグリッドレイアウトなどの技術が推奨されています。これらはレスポンシブデザインに適しており、より柔軟なレイアウトを可能にします。</li>
</ul>
</li>
</ul>



<h3 class="wp-block-heading"><span id="toc8">最適な使用</span></h3>



<ul class="wp-block-list">
<li><strong>意図した目的での使用</strong>
<ul class="wp-block-list">
<li>テーブルは主にタブラー形式のデータ表示のために使用するべきです。レイアウト目的での使用は、セマンティック（意味論的）なWebデザインの原則に反しています。<br><span class="badge">参考</span>　<a href="https://it-biz.online/web-design/semantic-html/">セマンティックHTMLとは？</a></li>
</ul>
</li>
</ul>



<p class="wp-block-paragraph">HTMLの表は現代のWeb環境において、特定の用途、特にデータの整理とアクセス可能な表示において重要ですが、ページレイアウトのツールとしては他のより適した技術に取って代わられています。適切なコンテキストで使用される場合、表は効果的なツールであり続けます。</p>



<h2 class="wp-block-heading"><span id="toc9">HTML：テーブルのデザイン</span></h2>



<p class="wp-block-paragraph">ここからは、HTMLでテーブルのデザイン変更を行う方法を解説していきます。CSSを使用してスタイルを指定する方が現代的で柔軟ですが、知識の１つとして知っておいて損はありません。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">代表的な以下の属性について解説します。</p>



<div class="wp-block-cocoon-blocks-iconlist-box iconlist-box blank-box list-caret-right block-box"><div class="iconlist-title">tableタグで利用できる主な属性</div>
<ul class="wp-block-list">
<li>border属性</li>



<li>bordercolor属性</li>



<li>bgcolor属性</li>



<li>cellspacing属性</li>



<li>cellpadding属性</li>
</ul>
</div>
</div></div>



<h3 class="wp-block-heading"><span id="toc10">テーブルに罫線をつける方法（border属性）</span></h3>



<p class="wp-block-paragraph">border属性（<span class="badge">参考</span> <a href="https://it-biz.online/web-design/attribute/">属性とは？</a>）は、HTMLのtableタグにおいて、<strong>テーブルやセルの境界線（ボーダー）の幅を指定</strong>するために使用される属性です。この属性に数値を指定することで、ボーダーの幅をピクセル単位で設定できます。</p>



<p class="wp-block-paragraph">例えば、次のようにtableタグにborder属性を指定することで、テーブル全体に1ピクセル幅のボーダーを適用できます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;table border="1">
  ...
&lt;/table></pre>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box information-box">
<p class="wp-block-paragraph">しかし、border属性はHTML4.01で非推奨となり、HTML5では完全に廃止されました。現代のWeb開発では、代わりにCSSを使用してテーブルやセルのボーダーをスタイルすることが一般的です。</p>



<p class="wp-block-paragraph">例えば、次のようにCSSのborderプロパティを使用して、同様のボーダースタイルを適用できます。</p>
</div>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;style>
  table {
    border-collapse: collapse;
  }
  th, td {
    border: 1px solid black;
  }
&lt;/style>
&lt;table>
  &lt;tr>
    &lt;th>見出し1&lt;/th>
    &lt;th>見出し2&lt;/th>
  &lt;/tr>
  &lt;tr>
    &lt;td>データ1&lt;/td>
    &lt;td>データ2&lt;/td>
  &lt;/tr>
  &lt;tr>
    &lt;td>データ3&lt;/td>
    &lt;td>データ4&lt;/td>
  &lt;/tr>
&lt;/table></pre>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">上記を実行した結果がこちら。</p>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="478" height="142" src="https://it-biz.online/wp-content/uploads/2023/04/image-27.png" alt="" class="wp-image-7438" srcset="https://it-biz.online/wp-content/uploads/2023/04/image-27.png 478w, https://it-biz.online/wp-content/uploads/2023/04/image-27-300x89.png 300w" sizes="(max-width: 478px) 100vw, 478px" /><figcaption class="wp-element-caption">例：CSSで罫線を定義</figcaption></figure>
</div></div>



<h3 class="wp-block-heading"><span id="toc11">枠線の色を変える（bordercolor）</span></h3>



<p class="wp-block-paragraph"><code>bordercolor</code>属性は、HTMLのテーブルやセルの境界線（ボーダー）の色を指定するためにかつて使用されていた属性です。この属性に色名や16進カラーコードを指定することで、ボーダーの色を設定できました。</p>



<p class="wp-block-paragraph">例えば、以下のようにtableタグに<code>bordercolor</code>属性を指定することで、ボーダーの色を赤に設定できました。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;table border="1" bordercolor="red">
  ...
&lt;/table></pre>



<p class="wp-block-paragraph"><strong><span class="marker-under">しかし、<code>bordercolor</code>属性も非標準の属性であり、HTML標準仕様には含まれていません。そのため、現代のWeb開発では使用を避け</span></strong>、代わりにCSSを利用してボーダーの色をスタイルすることが推奨されています。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">例えば、以下のようにCSSの<code>border</code>プロパティを使用して、同様のボーダーの色を適用できます。</p>
</div></div>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;style>
  table {
    border-collapse: collapse;
  }
  th, td {
    border: 1px solid red;
  }
&lt;/style>

&lt;table>
  &lt;tr>
    &lt;th>見出し1&lt;/th>
    &lt;th>見出し2&lt;/th>
  &lt;/tr>
  &lt;tr>
    &lt;td>データ1&lt;/td>
    &lt;td>データ2&lt;/td>
  &lt;/tr>
  &lt;tr>
    &lt;td>データ3&lt;/td>
    &lt;td>データ4&lt;/td>
  &lt;/tr>
&lt;/table></pre>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">この例では、<code>border-collapse: collapse;</code>を使ってテーブルのボーダーがつながるようにしています。また、<code>th</code>および<code>td</code>要素に対して、<code>border: 1px solid red;</code>を使って1ピクセル幅の赤いボーダーを適用しています。</p>



<p class="wp-block-paragraph">CSSを使用することで、より柔軟で綺麗なデザインを実現できますし、標準仕様に準拠したコードを書くことができます。</p>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="502" height="147" src="https://it-biz.online/wp-content/uploads/2023/04/image-28.png" alt="" class="wp-image-7439" srcset="https://it-biz.online/wp-content/uploads/2023/04/image-28.png 502w, https://it-biz.online/wp-content/uploads/2023/04/image-28-300x88.png 300w, https://it-biz.online/wp-content/uploads/2023/04/image-28-500x146.png 500w" sizes="(max-width: 502px) 100vw, 502px" /><figcaption class="wp-element-caption">例：CSSで罫線の色を定義</figcaption></figure>
</div></div>



<h3 class="wp-block-heading"><span id="toc12">背景色を変更する方法（bgcolor属性）</span></h3>



<p class="wp-block-paragraph"><code>bgcolor</code>属性は、HTMLの過去のバージョンで使用されていた属性で、テーブルやセルの背景色を指定するために使われていました。この属性に色名や16進カラーコードを指定することで、背景色を設定できました。</p>



<p class="wp-block-paragraph">例えば、次のように<code>table</code>タグや<code>td</code>タグに<code>bgcolor</code>属性を指定することで、背景色を設定できました。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;table bgcolor="#f2f2f2">
  &lt;tr>
    &lt;th>見出し1&lt;/th>
    &lt;th>見出し2&lt;/th>
  &lt;/tr>
  &lt;tr>
    &lt;td bgcolor="lightblue">データ1&lt;/td>
    &lt;td bgcolor="lightblue">データ2&lt;/td>
  &lt;/tr>
  &lt;tr>
    &lt;td>データ3&lt;/td>
    &lt;td>データ4&lt;/td>
  &lt;/tr>
&lt;/table></pre>



<p class="has-text-align-left wp-block-paragraph">しかし、<code>bgcolor</code>属性は<strong>HTML4.01で非推奨</strong>となり、<strong><span class="marker-under">HTML5では完全に廃止</span></strong>されました。現代のWeb開発では、代わりにCSSを使用してテーブルやセルの背景色をスタイルすることが一般的です。</p>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="494" height="158" src="https://it-biz.online/wp-content/uploads/2023/04/image-29.png" alt="" class="wp-image-7440" srcset="https://it-biz.online/wp-content/uploads/2023/04/image-29.png 494w, https://it-biz.online/wp-content/uploads/2023/04/image-29-300x96.png 300w" sizes="(max-width: 494px) 100vw, 494px" /><figcaption class="wp-element-caption">例：bgcolor属性</figcaption></figure>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">例えば、次のようにCSSの<code>background-color</code>プロパティを使用して、同様の背景色を適用できます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;style>
  table {
    background-color: #f2f2f2;
  }
  td:first-child {
    background-color: lightblue;
  }
&lt;/style>

&lt;table>
  &lt;tr>
    &lt;th>見出し1&lt;/th>
    &lt;th>見出し2&lt;/th>
  &lt;/tr>
  &lt;tr>
    &lt;td>データ1&lt;/td>
    &lt;td>データ2&lt;/td>
  &lt;/tr>
  &lt;tr>
    &lt;td>データ3&lt;/td>
    &lt;td>データ4&lt;/td>
  &lt;/tr>
&lt;/table></pre>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="538" height="152" src="https://it-biz.online/wp-content/uploads/2023/04/image-30.png" alt="" class="wp-image-7441" srcset="https://it-biz.online/wp-content/uploads/2023/04/image-30.png 538w, https://it-biz.online/wp-content/uploads/2023/04/image-30-300x85.png 300w, https://it-biz.online/wp-content/uploads/2023/04/image-30-500x141.png 500w" sizes="(max-width: 538px) 100vw, 538px" /><figcaption class="wp-element-caption">例：CSSでセルの色を変更する</figcaption></figure>
</div></div>



<h3 class="wp-block-heading"><span id="toc13">セル間のスペースを指定（cellspacing属性）</span></h3>



<p class="wp-block-paragraph"><code>cellspacing</code>属性は、HTMLのtableタグにおいて、<strong>テーブル内のセル間のスペース</strong>（セルスペーシング）を指定するために使用される属性です。この属性に数値を指定することで、セル間のスペースをピクセル単位で設定できます。</p>



<p class="wp-block-paragraph">例えば、次のようにtableタグに<code>cellspacing</code>属性を指定することで、セル間に5ピクセルのスペースを設けることができます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;table cellspacing="5">
  ...
&lt;/table></pre>



<p class="wp-block-paragraph">しかし、<code>cellspacing</code>属性も他の属性と同様に<strong><span class="marker-under">HTML5で非推奨</span></strong>となりました。代わりにCSSを使用してテーブルのセル間のスペースをスタイルすることが一般的です。</p>



<p class="wp-block-paragraph">例えば、次のようにCSSの<code>border-spacing</code>プロパティを使用して、同様のセル間のスペースを設定できます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;style>
  table {
    border-collapse: separate;
    border-spacing: 20px;
  }
&lt;/style>

&lt;table>
  &lt;tr>
    &lt;th>見出し1&lt;/th>
    &lt;th>見出し2&lt;/th>
  &lt;/tr>
  &lt;tr>
    &lt;td>データ1&lt;/td>
    &lt;td>データ2&lt;/td>
  &lt;/tr>
  &lt;tr>
    &lt;td>データ3&lt;/td>
    &lt;td>データ4&lt;/td>
  &lt;/tr>
&lt;/table></pre>



<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="587" height="256" src="https://it-biz.online/wp-content/uploads/2023/04/image-31.png" alt="" class="wp-image-7442" srcset="https://it-biz.online/wp-content/uploads/2023/04/image-31.png 587w, https://it-biz.online/wp-content/uploads/2023/04/image-31-300x131.png 300w, https://it-biz.online/wp-content/uploads/2023/04/image-31-500x218.png 500w" sizes="(max-width: 587px) 100vw, 587px" /><figcaption class="wp-element-caption">例：CSSでセル間のスペースを指定</figcaption></figure>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">この例では、<code>border-collapse: separate;</code>を使ってテーブルのボーダーが分離されるようにしています。また、<code>border-spacing: </code>20<code>px;</code>を使ってセル間のスペースを20ピクセルに設定しています</p>
</div></div>



<h3 class="wp-block-heading"><span id="toc14">セル内のスペースを指定（cellpadding属性）</span></h3>



<p class="wp-block-paragraph"><code>cellpadding</code>属性は、HTMLのtableタグにおいて、テーブルのセル内の余白（セルパディング）を指定するために使用される属性です。この属性に数値を指定することで、セル内の余白をピクセル単位で設定できます。</p>



<p class="wp-block-paragraph">例えば、次のようにtableタグに<code>cellpadding</code>属性を指定することで、セル内の余白を10ピクセルに設定することができます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;table cellpadding="10">
  ...
&lt;/table></pre>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">しかし、<code>cellpadding</code>属性についても<strong><span class="marker-under">HTML5で非推奨</span></strong>となりました。</p>
</div></div>



<p class="wp-block-paragraph">代わりにCSSを使用してテーブルのセル内の余白をスタイルすることが一般的です。例えば、次のようにCSSの<code>padding</code>プロパティを使用して、同様のセル内の余白を設定できます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;style>
  th, td {
    padding: 10px;
  }
&lt;/style>
&lt;table>
  &lt;tr>
    &lt;th>見出し1&lt;/th>
    &lt;th>見出し2&lt;/th>
  &lt;/tr>
  &lt;tr>
    &lt;td>データ1&lt;/td>
    &lt;td>データ2&lt;/td>
  &lt;/tr>
  &lt;tr>
    &lt;td>データ3&lt;/td>
    &lt;td>データ4&lt;/td>
  &lt;/tr>
&lt;/table></pre>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>JSPファイル超入門 – 0 → 現場で“JSPの人”になるまで</title>
		<link>https://it-biz.online/web-design/html/java-server-pages/</link>
		
		<dc:creator><![CDATA[ビズドットオンライン]]></dc:creator>
		<pubDate>Tue, 06 May 2025 04:00:00 +0000</pubDate>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Web開発]]></category>
		<category><![CDATA[プログラミング]]></category>
		<guid isPermaLink="false">https://it-biz.online/?p=10372</guid>

					<description><![CDATA[JSP（Java Server Pages）は HTMLにJavaコードを差し込み、動的ページを生成する仕組み です。 まず最初にお伝えしたいのは、JSPは決して難しいものではありません。むしろ、「ちょっと動きのあるWe [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">JSP（Java Server Pages）は <strong><a href="https://it-biz.online/web-design/html-basic/">HTML</a>にJavaコードを差し込み、動的ページを生成する仕組み</strong> です。</p>



<p class="wp-block-paragraph">まず最初にお伝えしたいのは、<strong>JSPは決して難しいものではありません。</strong>むしろ、「ちょっと動きのあるWebページを、できるだけ簡単に作りたい！」という人のために生まれたものなのです。近年では他の技術に取って代わられた印象が否めないJSPですが、昔からある巨大なレガシーシステムなどでは現役で、システムの更改案件などではよく目にすることがあります。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">このページでは「JSPってそもそも何？」という一番大事な部分から、初心者向けに順を追って１からわかりやすく専門用語を避けて解説します。</p>
</div></div>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-4" checked><label class="toc-title" for="toc-checkbox-4">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">JSPとは何か？</a><ol><li><a href="#toc2" tabindex="0">【前提１】静的なページと動的なページ</a></li><li><a href="#toc3" tabindex="0">JSPとはどのような技術か</a></li><li><a href="#toc4" tabindex="0">JSPの動作のしくみ</a></li></ol></li><li><a href="#toc5" tabindex="0">JSPを動かすための準備</a><ol><li><a href="#toc6" tabindex="0">JSPの動作に必要なもの</a></li></ol></li><li><a href="#toc7" tabindex="0">最初のJSPファイルを作ってみよう</a><ol><li><a href="#toc8" tabindex="0">JSPファイルとはどんなファイルか</a></li><li><a href="#toc9" tabindex="0">ブラウザで表示してみる</a></li></ol></li><li><a href="#toc10" tabindex="0">JSPの基本構文</a><ol><li><a href="#toc11" tabindex="0">JSPの構成要素</a></li><li><a href="#toc12" tabindex="0">ディレクティブ</a></li><li><a href="#toc13" tabindex="0">スクリプトレット</a></li><li><a href="#toc14" tabindex="0">式（Expression）</a></li><li><a href="#toc15" tabindex="0">宣言</a></li><li><a href="#toc16" tabindex="0">コメントの書き方</a></li><li><a href="#toc17" tabindex="0">スクリプトレットはなるべく使わない</a></li></ol></li><li><a href="#toc18" tabindex="0">ELとJSTLでスクリプトレットのないJSPへ</a><ol><li><a href="#toc19" tabindex="0">EL（式言語）とは</a></li><li><a href="#toc20" tabindex="0">JSTL（JSP標準タグライブラリ）とは</a></li><li><a href="#toc21" tabindex="0">JSPをすっきり保つために</a></li></ol></li><li><a href="#toc22" tabindex="0">フォームからデータを受け取る</a><ol><li><a href="#toc23" tabindex="0">フォーム送信の流れ</a></li><li><a href="#toc24" tabindex="0">フォームを作るJSP（entry.jsp）</a></li><li><a href="#toc25" tabindex="0">データを受け取るJSP（result.jsp）</a></li><li><a href="#toc26" tabindex="0">ELを使って書き換える</a></li></ol></li><li><a href="#toc27" tabindex="0">セッションとCookieでデータを保持する</a><ol><li><a href="#toc28" tabindex="0">セッションの基本操作</a></li><li><a href="#toc29" tabindex="0">Cookieとは</a></li><li><a href="#toc30" tabindex="0">Cookieの基本操作</a></li><li><a href="#toc31" tabindex="0">セッションとCookieの使い分け</a></li></ol></li><li><a href="#toc32" tabindex="0">JSPで簡単なアンケートアプリを作ろう</a><ol><li><a href="#toc33" tabindex="0">アプリの構成と目的</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">JSPとは何か？</span></h2>



<p class="wp-block-paragraph"><strong>JSP（Java Server Pages）</strong>は、Javaを使ってWebページを動的に生成するための技術で、通常のHTMLファイルにJavaのコードを埋め込むことで、アクセスするたびに内容が変化するページを作成することを可能にします。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">そのため、JSPはJavaをベースとしていますが、HTMLの知識があれば、基本的な使い方は十分に理解することができます。</p>
</div></div>



<h3 class="wp-block-heading"><span id="toc2">【前提１】静的なページと動的なページ</span></h3>



<p class="wp-block-paragraph">Webページには、大きく分けて2種類あります。<br>1つは「<strong>静的なページ</strong>」、もう1つは「<strong>動的なページ</strong>」です。</p>


<a href="https://it-biz.online/it-skills/static-dynamic/" title="静的コンテンツ/動的コンテンツの違いを１分で解説【初心者向け】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2026/04/featured-p1-2049-static-dynamic-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2026/04/featured-p1-2049-static-dynamic-320x180.png 320w, https://it-biz.online/wp-content/uploads/2026/04/featured-p1-2049-static-dynamic-500x282.png 500w, https://it-biz.online/wp-content/uploads/2026/04/featured-p1-2049-static-dynamic-800x451.png 800w, https://it-biz.online/wp-content/uploads/2026/04/featured-p1-2049-static-dynamic-300x169.png 300w, https://it-biz.online/wp-content/uploads/2026/04/featured-p1-2049-static-dynamic-768x433.png 768w, https://it-biz.online/wp-content/uploads/2026/04/featured-p1-2049-static-dynamic-240x135.png 240w, https://it-biz.online/wp-content/uploads/2026/04/featured-p1-2049-static-dynamic-640x360.png 640w, https://it-biz.online/wp-content/uploads/2026/04/featured-p1-2049-static-dynamic.png 1480w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">静的コンテンツ/動的コンテンツの違いを１分で解説【初心者向け】</div><div class="blogcard-snippet internal-blogcard-snippet">【初心者向け】「動的」「静的」という言葉の意味とその違いを端的に解説します。本で学習したがイマイチ理解できない、、、結局一言でいうと違いは何？という疑問をお持ちの方に具体例を用いながら分かりやすく解説します。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.04.26</div></div></div></div></a>


<p class="wp-block-paragraph">静的なページとは、内容があらかじめ決まっていて、アクセスするたびに同じ内容が表示されるページです。たとえば、自己紹介だけが書かれた会社のホームページや、お知らせ一覧だけが載っているページなどが該当します。</p>



<p class="wp-block-paragraph">一方、動的なページは、アクセスした時点の情報や、閲覧しているユーザーの状態に応じて内容が変わります。たとえば、ショッピングサイトで商品が表示されたり、ログイン中のユーザー名が画面に表示されたりするページがそうです。</p>



<p class="wp-block-paragraph"><strong><span class="marker-under">静的なページはHTMLだけで作成できますが、動的なページを作るには、プログラムによってページの内容を生成する仕組みが必要</span></strong>です。JSPは、そのような仕組みの一つです。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">もちろんJSP以外にも同じようなことを実現することが可能で、現代ではほとんどJSP以外が主役です。なのですが、レガシーシステムでは今でも現役で動いていることが多いので「まあ知っておいて損はないかな」というのがJSPの位置づけです。</p>
</div></div>



<h3 class="wp-block-heading"><span id="toc3">JSPとはどのような技術か</span></h3>



<p class="wp-block-paragraph">JSPは、<strong>JavaのコードをHTMLに埋め込むことで</strong>、Webサーバー上で動的にHTMLを生成する技術です。拡張子が <code><span class="blue">.jsp</span></code> であるファイルを使ってページを作成します。</p>



<p class="wp-block-paragraph">JSPファイルは、<a href="https://it-biz.online/it-skills/web-server/">Webサーバー</a>（通常は<strong>Tomcat</strong>）に配置され、ユーザーがアクセスすると、サーバー側でJavaのコードが実行されます。その結果として生成されたHTMLが、ブラウザに送信され、画面に表示されます。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">つまり、JSPは「動的にHTMLを生成する仕組み」であり、「HTMLの中にJavaの処理を一部書き足せる形式のファイル」と言えます。</p>
</div></div>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box information-box">
<p class="wp-block-paragraph">JSPは、以下のような場面でよく利用されます。</p>



<ul class="wp-block-list">
<li>ユーザーの入力に応じて表示内容を変えたいとき</li>



<li>データベースから取得した情報を一覧表示したいとき</li>



<li>フォーム送信結果を別の画面に反映したいとき</li>



<li>ログインしたユーザーごとにページの表示内容を切り替えたいとき</li>
</ul>



<p class="wp-block-paragraph">このような場合、HTMLだけでは対応が難しくなりますが、JSPを使えば、これらの処理をサーバー側で実現できます。</p>
</div>



<h3 class="wp-block-heading"><span id="toc4">JSPの動作のしくみ</span></h3>



<p class="wp-block-paragraph">JSPファイルは、ユーザーがアクセスしたときに、サーバー側で一度「Javaのクラス（Servlet）」に変換されます。変換されたクラスはコンパイルされ、Javaプログラムとして実行されます。このとき、JSPファイルに書かれたHTMLの部分はそのままHTMLとして出力され、Javaのコード部分は処理されて結果が埋め込まれます。最終的に生成されたHTMLがブラウザに送信され、ユーザーに表示されます。</p>



<p class="wp-block-paragraph">このしくみによって、JSPは1枚のファイルで「HTMLの見た目」と「動的な処理」を両立させることができます。</p>



<p class="has-text-align-center wp-block-paragraph"><strong>JSPの動き方の流れ</strong></p>



<ol class="wp-block-list is-style-numeric-list-enclosed has-list-style">
<li class="is-style-bottom-margin-1em has-bottom-margin">ユーザーが <code>.jsp</code> ファイルをリクエストする（例：<code>hello.jsp</code>）</li>



<li class="is-style-bottom-margin-1em has-bottom-margin">Tomcat がその <code>.jsp</code> を読んで、中の Java を実行</li>



<li class="is-style-bottom-margin-1em has-bottom-margin">結果として HTML を作り出し、ブラウザに返す</li>



<li>ブラウザには、あたかも普通のHTMLのように見える</li>
</ol>



<p class="wp-block-paragraph">この一連の流れによって、「動きのあるページ」がリクエスト元に返却されることになります。</p>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box memo-box">
<p class="has-text-align-center wp-block-paragraph"><span class="badge-green">まとめ１</span>　<strong>JSPファイルとは？</strong></p>



<ol class="wp-block-list is-style-numeric-list-enclosed has-list-style">
<li class="is-style-bottom-margin-2em has-bottom-margin">HTMLだけでは静的なページしか作れない。<br>→JSPを使うことで動的なページが作成できます。</li>



<li class="is-style-bottom-margin-2em has-bottom-margin">JSPは、JavaのコードをHTMLに埋め込むことで、アクセスごとに変化するページを生成。</li>



<li class="is-style-bottom-margin-2em has-bottom-margin">JSPは、Webサーバー上で実行され、結果がHTMLとしてブラウザに表示される。</li>
</ol>
</div>



<h2 class="wp-block-heading"><span id="toc5">JSPを動かすための準備</span></h2>



<p class="wp-block-paragraph">JSPファイルは、<strong>通常のHTMLファイルと違い、単独では動作しません。</strong>JSPはサーバー側でJavaのコードを実行する仕組みのため、その処理を受け持つ「Webサーバー」や「Javaの開発環境」が必要です。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">この章では、JSPを動かすために必要なソフトウェアや環境を、1つずつ順を追って準備していきます。</p>
</div></div>



<h3 class="wp-block-heading"><span id="toc6">JSPの動作に必要なもの</span></h3>



<p class="wp-block-paragraph">JSPを動作させるには、次の3つが必要です。<strong>ここでは、それってそもそも何？みたいな説明＋実際にあなたのPCにインストールする手順をメモ程度に記載しておきますので、この辺の知識がすでにあるよ！という方は読み飛ばしてください。</strong></p>



<figure class="wp-block-table aligncenter"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>項目</th><th>説明</th></tr></thead><tbody><tr><td>JDK（Java Development Kit）</td><td>Javaのプログラムを実行するために必要なソフトウェアです。JSPはJavaで動作するため、必ず必要になります。</td></tr><tr><td>Tomcat（トムキャット）</td><td>JSPファイルを処理し、Javaのコードを実行してHTMLに変換するWebサーバーです。</td></tr><tr><td>エディタ（テキスト編集ソフト）</td><td>JSPファイルを作成するための道具です。Visual Studio Code（VS Code）やIntelliJ IDEAなどが便利です。</td></tr></tbody></table></div></figure>



<h4 class="wp-block-heading">JDKのインストール</h4>



<p class="wp-block-paragraph">まず、Javaの開発環境であるJDKをインストールします。JDKがインストールされていないと、JSPも動作しません。</p>


<a href="https://it-biz.online/java/java-setup/" title="Javaの開発環境構築の３ステップ解説（JDK/JRE/JVMの仕組みを１から解説）" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2024/05/image-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2024/05/image-320x180.png 320w, https://it-biz.online/wp-content/uploads/2024/05/image-240x135.png 240w, https://it-biz.online/wp-content/uploads/2024/05/image-640x360.png 640w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">Javaの開発環境構築の３ステップ解説（JDK/JRE/JVMの仕組みを１から解説）</div><div class="blogcard-snippet internal-blogcard-snippet">【超・初心者向け】Javaの開発環境を初心者向けに簡単に設定する方法をわかりやすく解説します。JDKのインストール、IDEの選択、開発のスタートまで、スムーズにJavaプログラミングを始める方法をご説明します。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.04.16</div></div></div></div></a>


<p class="has-text-align-center wp-block-paragraph"><span class="inline-button-green">手順</span></p>



<ol class="wp-block-list is-style-numeric-list-enclosed has-list-style">
<li class="is-style-bottom-margin-2em has-bottom-margin">Oracleの公式サイトまたはOpenJDKのサイトから、JDKをダウンロード。</li>



<li class="is-style-bottom-margin-2em has-bottom-margin">お使いのOSに合ったインストーラを選び、画面の指示に従ってインストール。</li>



<li>インストール後、コマンドプロンプト（またはターミナル）を開き、↓のコマンドを入力。</li>
</ol>



<pre class="EnlighterJSRAW" data-enlighter-language="generic" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">java -version
</pre>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">バージョンが表示されれば、正常にインストールされています。</p>
</div></div>



<h4 class="wp-block-heading">Tomcatのインストール</h4>



<p class="wp-block-paragraph">JSPファイルを処理するために、Tomcatをインストールします。<strong><span class="marker-under">TomcatはJavaで動作するWebサーバー</span></strong>で、JSPの実行に適した軽量なサーバーです。</p>



<p class="has-text-align-center wp-block-paragraph"><span class="inline-button-green">手順</span></p>



<ol class="wp-block-list is-style-numeric-list-enclosed has-list-style">
<li class="is-style-bottom-margin-2em has-bottom-margin">Apache Tomcat の公式サイトにアクセス。</li>



<li class="is-style-bottom-margin-2em has-bottom-margin">zip ファイル（Windows の場合）または tar.gz ファイル（Mac/Linux の場合）をダウンロード。</li>



<li class="is-style-bottom-margin-2em has-bottom-margin">ダウンロードしたファイルを任意の場所に展開（解凍）。<br>→<code>C:\tomcat</code> や <code>~/tomcat</code> などが一般的ですが、どこでもOK。</li>



<li class="is-style-bottom-margin-2em has-bottom-margin"><code>bin</code>フォルダにある <code>startup.bat</code>（Windows）または <code>startup.sh</code>（Mac/Linux）を実行。</li>



<li>ブラウザを開き、次のURLにアクセスします：</li>
</ol>




<a rel="noopener" href="http://localhost:8080/" title="&#28961;&#21177;&#12394;URL&#12391;&#12377;" class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img loading="lazy" decoding="async" src="https://s.wordpress.com/mshots/v1/http%3A%2F%2Flocalhost%3A8080%2F?w=320&#038;h=180" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="320" height="180" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">&#28961;&#21177;&#12394;URL&#12391;&#12377;</div><div class="blogcard-snippet external-blogcard-snippet"></div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=http://localhost:8080/" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">localhost</div></div></div></div></a>
</pre>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">Tomcatのトップページが表示されれば、インストールは成功です。</p>
</div></div>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box information-box">
<p class="wp-block-paragraph">注意：すでに他のアプリケーションがポート8080を使っている場合、Tomcatが起動できないことがあります。その場合は、設定ファイル（server.xml）でポート番号を変更してください。</p>
</div>



<h4 class="wp-block-heading">JSP用のフォルダを作る</h4>



<p class="wp-block-paragraph">Tomcatでは、<code><span class="bold-blue">webapps</span></code> フォルダの中にあるプロジェクトが自動的に読み込まれます。自分でJSPファイルを作って表示するには、ここに新しいフォルダを作成します。</p>



<p class="has-text-align-center wp-block-paragraph"><span class="inline-button-green">手順</span></p>



<ol class="wp-block-list is-style-numeric-list-enclosed has-list-style">
<li class="is-style-bottom-margin-2em has-bottom-margin">Tomcatフォルダ内の <code>webapps</code> に移動。</li>



<li class="is-style-bottom-margin-2em has-bottom-margin">新しくフォルダを作成し、たとえば <code>jsp-demo</code> という名前をつける。</li>



<li><code>jsp-demo</code> フォルダの中に、最初のJSPファイルを作成します。ファイル名は <code>hello.jsp</code> など。</li>
</ol>



<h4 class="wp-block-heading">エディタの準備</h4>



<p class="wp-block-paragraph">JSPファイルは、普通のテキストファイルとして作成できますが、プログラミングに適したエディタを使うと効率が上がります。以下のいずれかのエディタを使用するのが一般的です。</p>



<ul class="wp-block-list">
<li>Visual Studio Code（無料で軽量、拡張機能が豊富）</li>



<li>IntelliJ IDEA（Javaに特化した統合開発環境）</li>



<li>Eclipse（Java開発で定番のIDE）</li>
</ul>



<p class="wp-block-paragraph">初心者の方には、<strong>Visual Studio Codeが扱いやすくおすすめ</strong>です。必要に応じて「Java Extension Pack」などを追加すると、補完機能や構文チェックも利用できます。</p>



<h2 class="wp-block-heading"><span id="toc7">最初のJSPファイルを作ってみよう</span></h2>



<p class="wp-block-paragraph">前の章で、JSPを動かすための準備が整いました。この章では、実際にJSPファイルを1つ作成し、それをブラウザで表示するところまで進めます。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">ここでは、「JSPとはどういうものか」を実際に体験しながら、基本的な書き方や仕組みを理解していきます。</p>
</div></div>



<h3 class="wp-block-heading"><span id="toc8">JSPファイルとはどんなファイルか</span></h3>



<p class="wp-block-paragraph">JSPファイルは、基本的にはHTMLっぽく見えるコードで、この中の必要な部分にJavaのコードを差し込むことで、表示内容を動的に変えることができるようにしています。たとえば、「現在の日時を表示する」などの処理が可能になります。</p>



<p class="wp-block-paragraph">JSPファイルの拡張子は <code><span class="bold-blue">.jsp</span></code> です。ファイルの中には、通常のHTMLタグと、Javaのコードが組み合わさって記述されます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%@ page contentType="text/html; charset=UTF-8" %>
&lt;!DOCTYPE html>
&lt;html>
&lt;head>
  &lt;meta charset="UTF-8">
  &lt;title>Hello JSP&lt;/title>
&lt;/head>
&lt;body>
  &lt;h1>こんにちは、JSPの世界へようこそ！&lt;/h1>
  &lt;p>現在の時刻は：&lt;%= java.time.LocalDateTime.now() %>&lt;/p>
&lt;/body>
&lt;/html>
</pre>



<p class="wp-block-paragraph">上記のJSPファイルの中では、JavaのコードとHTMLが組み合わさっています。それぞれの部分について説明します。</p>



<ul class="wp-block-list is-style-icon-list-circle has-list-style">
<li class="is-style-bottom-margin-2em has-bottom-margin"><code>&lt;%@ page contentType="text/html; charset=UTF-8" %&gt;</code><br>→ この行は「ページ全体の設定」です。文字コードをUTF-8にすることで、文字化けを防ぎます。</li>



<li><code>&lt;%= java.time.LocalDateTime.now() %&gt;</code><br>→ この部分がJSPの特徴です。「現在の時刻を表示する」Javaのコードが入っています。<br><code>&lt;%=</code> と <code>%&gt;</code> で囲まれた中はJavaの「式」として実行され、結果がそのままHTMLに差し込まれます。</li>
</ul>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">上記のファイルをブラウザで表示するためにエディタで編集して保存しましょう。</p>
</div></div>



<ol class="wp-block-list is-style-numeric-list-enclosed has-list-style">
<li class="is-style-bottom-margin-2em has-bottom-margin">Tomcatの <code>webapps</code> フォルダの中にある、前章で作成した <code>jsp-demo</code> フォルダに移動。</li>



<li class="is-style-bottom-margin-2em has-bottom-margin"><code>hello.jsp</code> という名前の新しいファイルを作成。</li>



<li>ファイルをエディタで開き、↑の内容を記述し保存！</li>
</ol>



<h3 class="wp-block-heading"><span id="toc9">ブラウザで表示してみる</span></h3>



<p class="wp-block-paragraph">ファイルを保存したら、Tomcatが起動していることを確認し、ブラウザで次のURLにアクセスしてみましょう。</p>




<a rel="noopener" href="http://localhost:8080/jsp-demo/hello.jsp" title="&#28961;&#21177;&#12394;URL&#12391;&#12377;" class="blogcard-wrap external-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard external-blogcard eb-left cf"><div class="blogcard-label external-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail external-blogcard-thumbnail"><img loading="lazy" decoding="async" src="https://s.wordpress.com/mshots/v1/http%3A%2F%2Flocalhost%3A8080%2Fjsp-demo%2Fhello.jsp?w=320&#038;h=180" alt="" class="blogcard-thumb-image external-blogcard-thumb-image" width="320" height="180" /></figure><div class="blogcard-content external-blogcard-content"><div class="blogcard-title external-blogcard-title">&#28961;&#21177;&#12394;URL&#12391;&#12377;</div><div class="blogcard-snippet external-blogcard-snippet"></div></div><div class="blogcard-footer external-blogcard-footer cf"><div class="blogcard-site external-blogcard-site"><div class="blogcard-favicon external-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=http://localhost:8080/jsp-demo/hello.jsp" alt="" class="blogcard-favicon-image external-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain external-blogcard-domain">localhost</div></div></div></div></a>
</pre>



<p class="wp-block-paragraph">画面に「こんにちは、JSPの世界へようこそ！」という見出しと、現在の時刻が表示されていれば成功です。</p>



<p class="wp-block-paragraph">ブラウザでページを更新するたびに、時刻が変化するはずです。これは、<strong>JSPがアクセスされるたびにJavaのコードを実行して、ページの中身を動的に作っている</strong>ということを意味します。</p>



<h2 class="wp-block-heading"><span id="toc10">JSPの基本構文</span></h2>



<p class="wp-block-paragraph">前の章では、JSPファイルを作成し、Javaのコードを埋め込むことで「現在の時刻を表示する」ページを作成しました。ここからは、JSPファイルで使われる代表的な構文について解説します。どのようにJavaのコードをHTMLに差し込むのか、そしてJSP特有の書き方にはどんな種類があるのかを、順を追って学習していきましょう。</p>



<h3 class="wp-block-heading"><span id="toc11">JSPの構成要素</span></h3>



<p class="wp-block-paragraph">JSPでは、<strong>以下の4種類の記述形式が用意されています</strong>。これらを使い分けることで、Javaの処理とHTMLの表示を同時に扱うことができます。</p>



<figure class="wp-block-table aligncenter"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>種類</th><th>記述方法</th><th>役割</th></tr></thead><tbody><tr><td>ディレクティブ</td><td><code>&lt;%<span class="bold-red">@</span> ... %&gt;</code></td><td>ページ全体の設定を行う（文字コードなど）</td></tr><tr><td>スクリプトレット</td><td><code>&lt;% ... %&gt;</code></td><td>Javaの処理（変数の定義や条件分岐など）を書く</td></tr><tr><td>式（Expression）</td><td><code>&lt;%<span class="bold-red">=</span> ... %&gt;</code></td><td>Javaの値をそのままHTMLに出力する</td></tr><tr><td>宣言</td><td><code>&lt;%<span class="bold-red">!</span> ... %&gt;</code></td><td>メソッドやフィールドを定義する（あまり使われない）</td></tr></tbody></table></div></figure>



<h3 class="wp-block-heading"><span id="toc12">ディレクティブ</span></h3>



<p class="wp-block-paragraph">ディレクティブは、JSPファイル全体に関する設定を行うものです。最もよく使われるのは <code>page</code> ディレクティブです。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%@ page contentType="text/html; charset=UTF-8" %>
</pre>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">この記述によって、出力するHTMLの文字コードがUTF-8になります。日本語を正しく表示するために必須です。</p>
</div></div>



<h3 class="wp-block-heading"><span id="toc13">スクリプトレット</span></h3>



<p class="wp-block-paragraph">スクリプトレットは、JSPファイル内にJavaの処理を書くための領域です。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%
  int year = java.time.LocalDate.now().getYear();
  String message = "今年は " + year + " 年です。";
%>
&lt;p>&lt;%= message %>&lt;/p>
</pre>



<p class="wp-block-paragraph">この例では、Javaで現在の年を取得し、それを文字列として作成しています。そして <code>&lt;%= ... %&gt;</code> を使って、結果をHTMLに出力しています。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p class="wp-block-paragraph">スクリプトレットの中ではJavaの文法がそのまま使えます。ただし、後述するように<strong>スクリプトレットは新しい開発ではなるべく使わない方向にあります</strong>。</p>
</blockquote>



<h3 class="wp-block-heading"><span id="toc14">式（Expression）</span></h3>



<p class="wp-block-paragraph">式は、値をそのままHTMLとして出力したいときに使います。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;p>こんにちは、&lt;%= "JSPユーザー" %>さん！&lt;/p>
</pre>



<p class="wp-block-paragraph">上の例では、<code>"JSPユーザー"</code> という文字列がHTMLに挿入され、ブラウザには次のように表示されます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="generic" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">こんにちは、JSPユーザーさん！
</pre>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">この書き方は非常にシンプルで、<strong>値を表示するだけ</strong>であれば便利ですが、複雑な処理は向きません。</p>
</div></div>



<h3 class="wp-block-heading"><span id="toc15">宣言</span></h3>



<p class="wp-block-paragraph">宣言は、JSPファイルの中で<strong>メソッドや変数を定義したい場合</strong>に使います。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%! 
  private String getGreeting(String name) {
    return "こんにちは、" + name + "さん！";
  }
%>
&lt;p>&lt;%= getGreeting("太郎") %>&lt;/p>
</pre>



<p class="wp-block-paragraph">このように、JSPファイルの中で小さな関数を定義して、それを式の中で呼び出すこともできます。<strong>ただし、JSPファイルに処理を詰め込みすぎると保守が難しくなるため、このような記述はできるだけ避け、外部のJavaクラスに処理を分けることが望まれます。</strong></p>



<h3 class="wp-block-heading"><span id="toc16">コメントの書き方</span></h3>



<p class="wp-block-paragraph">JSPには、HTMLのコメントと、JSP用のコメントの2種類があります。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;!-- これはHTMLのコメントです（ブラウザの「ページのソース」に表示されます） -->

&lt;%-- これはJSPのコメントです（ブラウザには一切表示されません） --%>
</pre>



<p class="wp-block-paragraph">HTMLのコメントはWebページに送信されるため、内容を見られる可能性があります。<br>一方、JSPのコメントはサーバー側で処理が止まるため、セキュリティ的に重要なコメントや開発者向けのメモはJSPのコメントで書くのが安全です。</p>



<h3 class="wp-block-heading"><span id="toc17">スクリプトレットはなるべく使わない</span></h3>



<p class="wp-block-paragraph">JSPの構文として紹介しましたが、<strong>スクリプトレット（<code>&lt;% ... %&gt;</code>）の使用は、今では非推奨</strong>とされています。理由は以下の通り。</p>



<ul class="wp-block-list is-style-icon-list-cross has-list-style">
<li>HTMLとJavaのロジックが混ざることで、読みづらくなる</li>



<li>保守性が下がり、エラーが起きやすくなる</li>



<li>JSTL（JSP標準タグライブラリ）やEL（式言語）の方がシンプルで安全に書ける</li>
</ul>



<p class="wp-block-paragraph">そのため、今後はJSTLやELを使って、できるだけ「Javaコードを書かずに表示を制御する方法」を覚えていくことが大切です。</p>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box memo-box">
<p class="has-text-align-center wp-block-paragraph"><span class="badge-green">まとめ</span>　<strong>JSPの基本構文</strong></p>



<ul class="wp-block-list">
<li>JSPには、ディレクティブ・スクリプトレット・式・宣言という4種類の書き方がある。</li>



<li>スクリプトレットや宣言ではJavaの文法をそのまま使うことができるが、使いすぎは避けるべし。</li>



<li>式（<code>&lt;%= ... %&gt;</code>）は、値を簡単に出力するのに便利です。</li>



<li>コメントは、必要に応じてJSPコメント（<code>&lt;%-- --%&gt;</code>）を使いましょう。</li>
</ul>
</div>



<p class="wp-block-paragraph">次の章では、<strong>JSTLとEL（式言語）を使った“スクリプトレットを使わない”JSPの書き方</strong>を学びます。より読みやすく、安全なJSPの記述方法を習得していきましょう。</p>



<h2 class="wp-block-heading"><span id="toc18">ELとJSTLでスクリプトレットのないJSPへ</span></h2>



<p class="wp-block-paragraph">ここまでの解説では、JSPの基本構文としてスクリプトレット（<code>&lt;% ... %&gt;</code>）などを紹介しました。<br>しかし近年のJSP開発では、<strong>スクリプトレットを使わない記述スタイル</strong>が主流となっています。</p>



<p class="wp-block-paragraph">この章では、<strong>EL（Expression Language）とJSTL（JSP Standard Tag Library）</strong>という2つの仕組みを使って、<strong>JSPファイルの中にJavaコードを書かずに動的な表示を行う方法</strong>を学んでいきます。</p>



<h3 class="wp-block-heading"><span id="toc19">EL（式言語）とは</span></h3>



<p class="wp-block-paragraph">EL（Expression Language）は、JSPの中で<strong>Javaの値を簡潔に記述するための言語</strong>です。<br>スクリプトレットのように <code>&lt;%=</code> で囲む必要がなく、シンプルに <code>${変数名}</code> と書くだけで値を出力できます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;p>こんにちは、${userName} さん。&lt;/p>
</pre>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">このコードでは、Javaのサーバー側で <code>userName</code> という名前のデータ（属性）が用意されていれば、自動的にその値が表示されます。</p>
</div></div>



<h3 class="wp-block-heading"><span id="toc20">JSTL（JSP標準タグライブラリ）とは</span></h3>



<p class="wp-block-paragraph">JSTLとは、JSP上で使える<strong>共通の処理をあらかじめタグ化したライブラリ</strong>です。<br>たとえば、以下のような処理が可能です。</p>



<ul class="wp-block-list">
<li>条件分岐（if）</li>



<li>繰り返し処理（forEach）</li>



<li>値のフォーマット（日付や数値）</li>



<li>URLの生成</li>
</ul>



<p class="wp-block-paragraph">JSTLを使うことで、<strong>複雑なJavaの処理をわかりやすいタグで書くことができる</strong>ようになります。</p>



<h4 class="wp-block-heading">JSTLを使う準備</h4>



<p class="wp-block-paragraph">JSTLを使うには、JSTLライブラリの <code>.jar</code> ファイルを JSPプロジェクトの中に追加する必要があります。</p>



<p class="has-text-align-center wp-block-paragraph"><span class="inline-button-green">手順</span></p>



<ol class="wp-block-list is-style-numeric-list-enclosed has-list-style">
<li class="is-style-bottom-margin-2em has-bottom-margin">JSTLの最新版（Jakarta標準）をダウンロード<br>→ <a>https://jakarta.ee/specifications/tags/</a></li>



<li class="is-style-bottom-margin-2em has-bottom-margin">ダウンロードした <code>jakarta.servlet.jsp.jstl-api-x.x.x.jar</code> などの <code>.jar</code> ファイルを、Tomcatの <code>lib</code> フォルダ、またはプロジェクトの <code>WEB-INF/lib</code> フォルダにコピーします。</li>



<li>JSPファイルの先頭に、以下のようにタグライブラリを読み込む宣言を記述します。</li>
</ol>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%@ taglib prefix="c" uri="https://jakarta.ee/taglibs/core" %>
</pre>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">この設定により、<code>&lt;c:if&gt;</code> や <code>&lt;c:forEach&gt;</code> などのJSTLタグが使えるようになります。</p>
</div></div>



<h4 class="wp-block-heading">JSTLで条件分岐をする</h4>



<p class="wp-block-paragraph">スクリプトレットで <code>if</code> 文を書かなくても、JSTLの <code>&lt;c:if&gt;</code> タグを使うことで簡単に条件分岐ができます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%@ taglib prefix="c" uri="https://jakarta.ee/taglibs/core" %>
&lt;c:if test="${loginUser != null}">
  &lt;p>ようこそ、${loginUser.name} さん&lt;/p>
&lt;/c:if>
</pre>



<p class="wp-block-paragraph">このように、<code>loginUser</code> という属性が <code>null</code> でなければ、挨拶文が表示されます。</p>



<h4 class="wp-block-heading">JSTLで繰り返し表示をする</h4>



<p class="wp-block-paragraph">リストや配列の内容を繰り返し表示するには、<code>&lt;c:forEach&gt;</code> を使います。</p>



<p class="wp-block-paragraph">サーバー側で、次のようにリストをセットしておきます（Servletなどで）：</p>



<pre class="EnlighterJSRAW" data-enlighter-language="java" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">List&lt;String> names = List.of("太郎", "花子", "次郎");
request.setAttribute("nameList", names);
</pre>



<p class="wp-block-paragraph">JSPファイルでは、次のように記述します：</p>



<pre class="EnlighterJSRAW" data-enlighter-language="generic" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%@ taglib prefix="c" uri="https://jakarta.ee/taglibs/core" %>
&lt;ul>
  &lt;c:forEach var="name" items="${nameList}">
    &lt;li>${name}&lt;/li>
  &lt;/c:forEach>
&lt;/ul>
</pre>



<p class="wp-block-paragraph">このコードにより、以下のようなHTMLが生成されます：</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;ul>
  &lt;li>太郎&lt;/li>
  &lt;li>花子&lt;/li>
  &lt;li>次郎&lt;/li>
&lt;/ul>
</pre>



<h3 class="wp-block-heading"><span id="toc21">JSPをすっきり保つために</span></h3>



<p class="wp-block-paragraph">ELとJSTLを使うことで、JSPファイル内にJavaのコードを書く必要がなくなり、<strong>HTMLに近い構造を保ちながら動的な処理を行うことができます。</strong><br>これは、JSPを読みやすく・保守しやすくする上でも非常に重要です。</p>



<p class="wp-block-paragraph">また、デザイナーと共同で作業するようなプロジェクトでも、HTMLに近い見た目を保つことで、分業がしやすくなります。</p>



<h2 class="wp-block-heading"><span id="toc22">フォームからデータを受け取る</span></h2>



<p class="wp-block-paragraph">JSPを使ってWebアプリケーションを作成する際、ユーザーの入力に応じて処理を行うことは非常に重要です。この章では、<strong>HTMLのフォームを使って入力されたデータを、JSPで受け取って表示する方法</strong>を学びます。</p>



<h3 class="wp-block-heading"><span id="toc23">フォーム送信の流れ</span></h3>



<p class="wp-block-paragraph">フォームを使った処理は、次のような流れで行われます。</p>



<ol class="wp-block-list is-style-numeric-list-enclosed has-list-style">
<li>入力フォームのあるページ（JSP）を表示する</li>



<li>ユーザーが名前などの情報を入力し、送信ボタンを押す</li>



<li>入力内容がサーバーに送られる</li>



<li>受け取ったJSPファイルがその情報を読み取り、画面に表示する</li>
</ol>



<p class="wp-block-paragraph">JSPではこの一連の流れを、HTMLとJavaの仕組みで簡単に実現できます。</p>



<h3 class="wp-block-heading"><span id="toc24">フォームを作るJSP（entry.jsp）</span></h3>



<p class="wp-block-paragraph">まずは、名前を入力するための簡単なフォームを作成します。</p>



<h4 class="wp-block-heading">entry.jsp</h4>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;!DOCTYPE html>
&lt;html>
&lt;head>
  &lt;meta charset="UTF-8">
  &lt;title>名前の入力&lt;/title>
&lt;/head>
&lt;body>
  &lt;h2>お名前を入力してください&lt;/h2>
  &lt;form action="result.jsp" method="post">
    &lt;label>名前：&lt;input type="text" name="username" />&lt;/label>
    &lt;input type="submit" value="送信" />
  &lt;/form>
&lt;/body>
&lt;/html>
</pre>



<p class="wp-block-paragraph">このページでは、名前を入力して「送信」ボタンを押すと、<code>result.jsp</code> にPOSTリクエストでデータが送信されます。</p>



<h3 class="wp-block-heading"><span id="toc25">データを受け取るJSP（result.jsp）</span></h3>



<p class="wp-block-paragraph">次に、送信されたデータを受け取って表示するためのJSPファイルを作成します。</p>



<h4 class="wp-block-heading">result.jsp</h4>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%@ page contentType="text/html; charset=UTF-8" %>
&lt;!DOCTYPE html>
&lt;html>
&lt;head>
  &lt;meta charset="UTF-8">
  &lt;title>入力結果&lt;/title>
&lt;/head>
&lt;body>
  &lt;h2>ようこそ！&lt;/h2>
  &lt;p>あなたの名前は &lt;strong>&lt;%= request.getParameter("username") %>&lt;/strong> さんですね。&lt;/p>
&lt;/body>
&lt;/html>
</pre>



<p class="wp-block-paragraph">ここでは、<code>request.getParameter("username")</code> というコードで、フォームから送られたデータを取得しています。</p>



<ul class="wp-block-list">
<li><code>request</code> はJSPに自動で用意されているオブジェクト。</li>



<li><code>getParameter("username")</code> は、フォームの<code>name="username"</code> に対応した値を取得するメソッド。</li>
</ul>



<h3 class="wp-block-heading"><span id="toc26">ELを使って書き換える</span></h3>



<p class="wp-block-paragraph">JSTLやELを使えば、<code>result.jsp</code> をもっとすっきり書くこともできます。以下のようにリクエスト属性に値をセットしてから表示することで、式言語を活用できます。</p>



<h4 class="wp-block-heading">Servlet側（例）</h4>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">String name = request.getParameter("username");
request.setAttribute("username", name);
request.getRequestDispatcher("/result.jsp").forward(request, response);
</pre>



<h4 class="wp-block-heading">result.jsp：</h4>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%@ taglib prefix="c" uri="https://jakarta.ee/taglibs/core" %>
&lt;p>こんにちは、${username} さん！&lt;/p>
</pre>



<p class="wp-block-paragraph">ただし、Servletを使う方法はこのガイドの後半で詳しく扱いますので、今はまず <code>request.getParameter()</code> による受け取りに慣れることをおすすめします。</p>



<h2 class="wp-block-heading"><span id="toc27">セッションとCookieでデータを保持する</span></h2>



<p class="wp-block-paragraph">JSPでは、ユーザーが入力した情報を「別のページでも使いたい」という場面がよくあります。<br>たとえば、ログイン状態を維持したり、前の画面で入力された名前を次の画面でも表示したりする場合です。</p>



<p class="wp-block-paragraph">そのようなときに役立つのが <strong>セッション（Session）</strong> と <strong>クッキー（Cookie）</strong> です。<br>この章では、それぞれの役割と使い方を学びます。</p>



<h3 class="wp-block-heading"><span id="toc28">セッションの基本操作</span></h3>



<h4 class="wp-block-heading">データの保存：</h4>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%
  String name = request.getParameter("username");
  session.setAttribute("userName", name);
%>
</pre>



<p class="wp-block-paragraph">このコードは、<code>userName</code> という名前でセッションに値を保存します。</p>



<h4 class="wp-block-heading">データの取得：</h4>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%
  String name = (String) session.getAttribute("userName");
%>
&lt;p>ようこそ、&lt;%= name %> さん&lt;/p>
</pre>



<p class="wp-block-paragraph">このようにすれば、<strong>前のページで保存した値を、別のページで取り出して使うことができます。</strong></p>



<h4 class="wp-block-heading">セッションの有効期間と注意点</h4>



<p class="wp-block-paragraph">セッションは、ユーザーがブラウザを閉じるか、一定時間操作をしないと自動的に無効になります。Tomcatの初期設定では、30分間操作がないとセッションが切れます。</p>



<p class="wp-block-paragraph">また、<strong>多くの情報をセッションに保存しすぎると、サーバーのメモリを圧迫する可能性がある</strong>ため、用途を絞って使うことが大切です。</p>



<h3 class="wp-block-heading"><span id="toc29">Cookieとは</span></h3>



<p class="wp-block-paragraph">Cookie（クッキー）は、<strong>情報をユーザーのブラウザに保存する仕組み</strong>です。<br>サーバー側から「この情報を保存しておいてください」と指示すると、ブラウザがその内容を保持し、次回以降のアクセス時にその情報を自動的に送信してきます。</p>



<h3 class="wp-block-heading"><span id="toc30">Cookieの基本操作</span></h3>



<h4 class="wp-block-heading">Cookieの作成と送信：</h4>



<pre class="EnlighterJSRAW" data-enlighter-language="generic" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%
  String name = request.getParameter("username");
  Cookie cookie = new Cookie("userName", name);
  cookie.setMaxAge(60 * 60); // 1時間（秒単位）
  response.addCookie(cookie);
%>
</pre>



<h4 class="wp-block-heading">Cookieの取得：</h4>



<pre class="EnlighterJSRAW" data-enlighter-language="generic" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%
  String name = "";
  Cookie[] cookies = request.getCookies();
  if (cookies != null) {
    for (Cookie c : cookies) {
      if ("userName".equals(c.getName())) {
        name = c.getValue();
      }
    }
  }
%>
&lt;p>こんにちは、&lt;%= name %> さん&lt;/p>
</pre>



<p class="wp-block-paragraph">このように、Cookieを使えば、ブラウザに保存された情報を次回のアクセス時にも利用できます。</p>



<h3 class="wp-block-heading"><span id="toc31">セッションとCookieの使い分け</span></h3>



<figure class="wp-block-table"><div class="scrollable-table stfc-sticky"><table class="has-fixed-layout"><thead><tr><th>比較項目</th><th>セッション</th><th>Cookie</th></tr></thead><tbody><tr><td>保存場所</td><td>サーバー側</td><td>ブラウザ側</td></tr><tr><td>有効期間</td><td>ログアウトや時間切れまで</td><td>明示的に期限を設定できる</td></tr><tr><td>データの大きさ</td><td>比較的大きなデータがOK</td><td>少量（4KBまで）</td></tr><tr><td>セキュリティ</td><td>比較的安全（外部に見えない）</td><td>攻撃に注意が必要（盗聴・改ざん）</td></tr></tbody></table></div></figure>



<p class="wp-block-paragraph"><strong>一時的な状態保持（ログイン情報など）にはセッション</strong>、<br><strong>ユーザーに関連する設定（言語選択やテーマなど）にはCookie</strong>がよく使われます。</p>



<h2 class="wp-block-heading"><span id="toc32">JSPで簡単なアンケートアプリを作ろう</span></h2>



<p class="wp-block-paragraph">JSPを使ってWebアプリケーションを作るには、「複数ページにまたがる処理」を整理することが大切です。<br>この章では、<strong>3画面構成のアンケートアプリ</strong>を作り、情報の受け渡し、表示の切り替え、セッションの活用を総合的に体験します。</p>



<h3 class="wp-block-heading"><span id="toc33">アプリの構成と目的</span></h3>



<p class="wp-block-paragraph">このアプリでは、以下のような流れでユーザーにアンケートに答えてもらい、最終画面でまとめて表示します。</p>



<ol class="wp-block-list">
<li><strong>入力画面</strong>：名前と好きな色を入力（form）</li>



<li><strong>確認画面</strong>：入力された内容を表示（セッションで一時保持）</li>



<li><strong>完了画面</strong>：ありがとうメッセージと入力内容の最終確認</li>
</ol>



<p class="has-text-align-center wp-block-paragraph"><strong>プロジェクト構造</strong></p>



<pre class="EnlighterJSRAW" data-enlighter-language="generic" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">jsp-demo/
├─ input.jsp     （入力画面）
├─ confirm.jsp   （確認画面）
└─ thanks.jsp    （完了画面）
</pre>



<h4 class="wp-block-heading">入力画面：input.jsp</h4>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%@ page contentType="text/html; charset=UTF-8" %>
&lt;!DOCTYPE html>
&lt;html>
&lt;head>&lt;meta charset="UTF-8">&lt;title>アンケート入力&lt;/title>&lt;/head>
&lt;body>
  &lt;h2>アンケートにご協力ください&lt;/h2>
  &lt;form action="confirm.jsp" method="post">
    &lt;p>お名前：&lt;input type="text" name="userName" />&lt;/p>
    &lt;p>好きな色：
      &lt;select name="favoriteColor">
        &lt;option value="赤">赤&lt;/option>
        &lt;option value="青">青&lt;/option>
        &lt;option value="緑">緑&lt;/option>
      &lt;/select>
    &lt;/p>
    &lt;input type="submit" value="確認画面へ" />
  &lt;/form>
&lt;/body>
&lt;/html>
</pre>



<h4 class="wp-block-heading">確認画面：confirm.jsp</h4>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%@ page contentType="text/html; charset=UTF-8" %>
&lt;%
  String userName = request.getParameter("userName");
  String favoriteColor = request.getParameter("favoriteColor");

  session.setAttribute("userName", userName);
  session.setAttribute("favoriteColor", favoriteColor);
%>
&lt;!DOCTYPE html>
&lt;html>
&lt;head>&lt;meta charset="UTF-8">&lt;title>確認画面&lt;/title>&lt;/head>
&lt;body>
  &lt;h2>以下の内容でよろしいですか？&lt;/h2>
  &lt;p>お名前：&lt;%= userName %>&lt;/p>
  &lt;p>好きな色：&lt;%= favoriteColor %>&lt;/p>
  &lt;form action="thanks.jsp" method="post">
    &lt;input type="submit" value="送信する" />
  &lt;/form>
&lt;/body>
&lt;/html>
</pre>



<h4 class="wp-block-heading">完了画面：thanks.jsp</h4>



<pre class="EnlighterJSRAW" data-enlighter-language="html" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;%@ page contentType="text/html; charset=UTF-8" %>
&lt;%
  String name = (String) session.getAttribute("userName");
  String color = (String) session.getAttribute("favoriteColor");

  // 必要があればセッションのデータを破棄
  session.invalidate();
%>
&lt;!DOCTYPE html>
&lt;html>
&lt;head>&lt;meta charset="UTF-8">&lt;title>送信完了&lt;/title>&lt;/head>
&lt;body>
  &lt;h2>ご協力ありがとうございました！&lt;/h2>
  &lt;p>&lt;strong>&lt;%= name %>&lt;/strong> さんの好きな色は &lt;strong>&lt;%= color %>&lt;/strong> ですね。&lt;/p>
&lt;/body>
&lt;/html>
</pre>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box memo-box">
<p class="has-text-align-center wp-block-paragraph">&#x2705; まとめ</p>



<ul class="wp-block-list">
<li><strong>JSPとは何か</strong>
<ul class="wp-block-list">
<li>HTMLにJavaの処理を埋め込んで、動的なWebページを作成できる技術</li>



<li class="is-style-bottom-margin-2em has-bottom-margin">サーバー側で処理され、HTMLとしてブラウザに返される</li>
</ul>
</li>



<li><strong>JSPの実行に必要な環境</strong>
<ul class="wp-block-list">
<li>JDKとTomcatが必須（Java実行環境とWebサーバー）</li>



<li class="is-style-bottom-margin-2em has-bottom-margin">JSPファイルはTomcatの<code>webapps</code>内に配置することで動作する</li>
</ul>
</li>



<li><strong>JSPファイルの基本構文</strong>
<ul class="wp-block-list">
<li><code>&lt;%@ page %&gt;</code>：ページ全体の設定</li>



<li><code>&lt;%= ... %&gt;</code>：Javaの値をHTMLに出力</li>



<li><code>&lt;% ... %&gt;</code>：処理を書く（スクリプトレット）</li>



<li class="is-style-bottom-margin-2em has-bottom-margin"><code>&lt;%! ... %&gt;</code>：変数やメソッドの宣言</li>
</ul>
</li>



<li><strong>スクリプトレットの非推奨と代替方法</strong>
<ul class="wp-block-list">
<li>EL（式言語）で<code>${変数名}</code>と書くと簡単に出力可能</li>



<li class="is-style-bottom-margin-2em has-bottom-margin">JSTLで<code>&lt;c:if&gt;</code>や<code>&lt;c:forEach&gt;</code>などの制御構文を記述可能</li>
</ul>
</li>



<li><strong>フォームデータの送受信</strong>
<ul class="wp-block-list">
<li><code>&lt;form&gt;</code>タグでデータをPOST送信し、<code>request.getParameter()</code>で取得</li>



<li class="is-style-bottom-margin-2em has-bottom-margin">データをセッションに保存して複数ページで利用可能</li>
</ul>
</li>



<li><strong>セッションとCookieの使い分け</strong>
<ul class="wp-block-list">
<li>セッション：サーバー側に一時的に情報を保持（ログイン状態など）</li>



<li class="is-style-bottom-margin-2em has-bottom-margin">Cookie：ブラウザに保存し、次回アクセス時に自動送信（言語設定など）</li>
</ul>
</li>
</ul>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>【JavaScript】1分で理解できる！document.write－文字列の表示方法【初心者向け】</title>
		<link>https://it-biz.online/web-design/document-write/</link>
		
		<dc:creator><![CDATA[ビズドットオンライン]]></dc:creator>
		<pubDate>Wed, 29 Jan 2020 04:48:50 +0000</pubDate>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[WEBデザイン]]></category>
		<guid isPermaLink="false">https://it-biz.online/?p=3468</guid>

					<description><![CDATA[JavaScriptで文字列（変数の値）を表示するdocument.write()の使い方を解説します。 document.write()は、JavaScript初心者が初めて動かすメソッドになることが多いのですが、そも [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph"><strong><span class="marker-under">JavaScriptで文字列（変数の値）を表示するdocument.write()の使い方を解説します。</span></strong></p>



<p class="wp-block-paragraph">document.write()は、JavaScript初心者が初めて動かすメソッドになることが多いのですが、そもそもdocument.write()って何？と疑問に思う方も大勢いらっしゃるはずです。</p>



<p class="wp-block-paragraph">このページでは、document.write()の意味と使い方、基本的な構文ルールや実際の利用シーンなどを網羅的に解説します。</p>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label"><span class="label-box-label-text block-box-label-text box-label-text">このページで学べる内容</span></div><div class="label-box-content block-box-content box-content">
<ul class="wp-block-list"><li>document.write()の意味と処理内容</li><li>document.write()の構文ルールと使い方</li><li>document.write()を用いてHTMLのタグの内容を出力する方法</li><li>利用上の注意点・Tips</li></ul>
</div></div>



<p class="wp-block-paragraph">JavaScript初心者の方にとって、<strong><span style="color:#e60033" class="color">JavaScriptをマスターするために避けては通れない必須知識</span></strong>ですので是非最後までご覧ください。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-6" checked><label class="toc-title" for="toc-checkbox-6">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">document.writeとは？</a><ol><li><a href="#toc2" tabindex="0">文字列は``or""で囲む</a></li><li><a href="#toc3" tabindex="0">document.writeーHTMLタグと組み合わせ</a></li></ol></li><li><a href="#toc4" tabindex="0">document(オブジェクト).write(メソッド)</a><ol><li><a href="#toc5" tabindex="0">document　⇒　オブジェクト</a></li><li><a href="#toc6" tabindex="0">write　⇒　メソッド</a></li></ol></li><li><a href="#toc7" tabindex="0">JavaScriptを体系的に学びたい方は</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">document.writeとは？</span></h2>



<p class="wp-block-paragraph"><strong>document.write()は、文字列や変数の値を表示させるメソッドです。</strong></p>



<p class="wp-block-paragraph">引数「( )の中」に直接表示させたい内容を指定するだけでOKです。</p>



<p class="has-text-align-center has-medium-font-size wp-block-paragraph"><strong><span style="color:#0095d9" class="color">document</span></strong>.<span style="font-weight: bold; color: rgb(243, 152, 0);" class="color">write</span><span style="font-weight: bold; color: rgb(0, 149, 217);" class="color">(</span>表示させたい内容<strong><span style="color:#0095d9" class="color">)</span></strong></p>



<p class="codepen" data-height="265" data-theme-id="default" data-default-tab="js,result" data-user="BizOnline" data-slug-hash="wvBbzza" style="height: 265px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;" data-pen-title="document.write1">
  <span>See the Pen <a href="https://codepen.io/BizOnline/pen/wvBbzza">
  document.write1</a> by ビズドットオンライン (<a href="https://codepen.io/BizOnline">@BizOnline</a>)
  on <a href="https://codepen.io">CodePen</a>.</span>
</p>
<script async="" src="https://static.codepen.io/assets/embed/ei.js"></script>



<p class="wp-block-paragraph">文字列だけではなく、例えば変数の内容を表示させることもできます。</p>



<p class="codepen" data-height="265" data-theme-id="default" data-default-tab="js,result" data-user="BizOnline" data-slug-hash="ZEYZoox" style="height: 265px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;" data-pen-title="document.write1">
  <span>See the Pen <a href="https://codepen.io/BizOnline/pen/ZEYZoox">
  document.write1</a> by ビズドットオンライン (<a href="https://codepen.io/BizOnline">@BizOnline</a>)
  on <a href="https://codepen.io">CodePen</a>.</span>
</p>
<script async="" src="https://static.codepen.io/assets/embed/ei.js"></script>



<p class="wp-block-paragraph">JavaScriptでは、例えば変数の中身を知りたいときや、処理の結果を知りたいときにこのdocumentwrite()メソッドを高頻度で利用します。</p>



<p class="has-small-font-size wp-block-paragraph"><strong>※JavaScriptの「変数宣言」について詳しく知りたい方はこちらのページをご覧ください。</strong></p>



<figure class="wp-block-embed-wordpress wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/web-design/var-let/" title="【JavaScript】let・const・var の違いとは？初心者向けに使い分けを3分で整理" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2024/02/image-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2024/02/image-320x180.png 320w, https://it-biz.online/wp-content/uploads/2024/02/image-240x135.png 240w, https://it-biz.online/wp-content/uploads/2024/02/image-640x360.png 640w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">【JavaScript】let・const・var の違いとは？初心者向けに使い分けを3分で整理</div><div class="blogcard-snippet internal-blogcard-snippet">JavaScript初心者向けガイド：変数の宣言方法をvar, let, constの違いを中心に解説。関数スコープ、ブロックスコープ、巻き上げ、再代入の可否などの基本概念を明確に理解し、実用的なサンプルコード付きでわかりやすくご説明します。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2026.04.26</div></div></div></div></a>
</div></figure>



<h3 class="wp-block-heading"><span id="toc2">文字列は``or""で囲む</span></h3>



<p class="wp-block-paragraph">文字列は、<strong>``（シングルクォーテーション）もしくは""（ダブルクォーテーション）で囲む</strong>必要があります。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="js" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">document.write("Hello World!");　//正常に出力される

document.write(`Hello World!`);       //こちらも正常に出力される

document.write(Hello World);          //出力エラー</pre>



<p class="wp-block-paragraph">最後の<strong>Hello World!</strong>は文字列とみなされないため、エラーが発生します。</p>



<p class="wp-block-paragraph">ちなみに、シングルクォーテーションとダブルクォーテーションを混ぜて利用するのはNGです。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="js" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">document.write(`Hello World!");　//これはエラーになります</pre>



<h3 class="wp-block-heading"><span id="toc3">document.writeーHTMLタグと組み合わせ</span></h3>



<figure class="wp-block-embed-wordpress wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/web-design/html-rule/" title="【初心者向け】HTMLの書き方の基本/基礎を３分で解説" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2019/10/html-rule-320x180.jpg" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2019/10/html-rule-320x180.jpg 320w, https://it-biz.online/wp-content/uploads/2019/10/html-rule-240x135.jpg 240w, https://it-biz.online/wp-content/uploads/2019/10/html-rule-640x360.jpg 640w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">【初心者向け】HTMLの書き方の基本/基礎を３分で解説</div><div class="blogcard-snippet internal-blogcard-snippet">【HTML入門編】HTMLの書き方を初心者向けにわかりやすくまとめました。HTMLって何？イメージがわきづらい方もこのページをご覧になれば「何となく」のイメージをつかめるはずです。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2023.07.10</div></div></div></div></a>
</div></figure>



<p class="wp-block-paragraph">document.write()では、<strong>引数の中身にHTMLタグを設置することができます。</strong></p>



<p class="has-text-align-center has-medium-font-size wp-block-paragraph">document.write(<strong><span style="color:#e60033" class="color">"</span><span style="color:#0095d9" class="color">&lt;開始タグ&gt;</span></strong>文字列<strong><span style="color:#0095d9" class="color">&lt;/終了タグ&gt;</span><span style="color:#e60033" class="color">"</span></strong>)</p>



<p class="codepen" data-height="265" data-theme-id="default" data-default-tab="js,result" data-user="BizOnline" data-slug-hash="zYxQKKp" style="height: 265px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;" data-pen-title="document.write3">
  <span>See the Pen <a href="https://codepen.io/BizOnline/pen/zYxQKKp">
  document.write3</a> by ビズドットオンライン (<a href="https://codepen.io/BizOnline">@BizOnline</a>)
  on <a href="https://codepen.io">CodePen</a>.</span>
</p>
<script async="" src="https://static.codepen.io/assets/embed/ei.js"></script>



<p class="wp-block-paragraph">ここで注意すべきは、あくまでも<strong><span class="marker-under">表示される内容はHTMLのコードである</span></strong>ということです。</p>



<p class="wp-block-paragraph">つまり、JavaScript自体はHTMLのタグを認識しません。いわば通常のHTMLのタグも<strong>通常通りの文字列として一旦主力され、ブラウザで表示する際にHTMLタグが読み込まれる</strong>とも言えます。</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img loading="lazy" decoding="async" width="929" height="588" src="https://it-biz.online/wp-content/uploads/2020/01/image-53.png" alt="" class="wp-image-3474" srcset="https://it-biz.online/wp-content/uploads/2020/01/image-53.png 929w, https://it-biz.online/wp-content/uploads/2020/01/image-53-300x190.png 300w, https://it-biz.online/wp-content/uploads/2020/01/image-53-500x316.png 500w, https://it-biz.online/wp-content/uploads/2020/01/image-53-768x486.png 768w, https://it-biz.online/wp-content/uploads/2020/01/image-53-800x506.png 800w" sizes="(max-width: 929px) 100vw, 929px" /></figure></div>



<p class="wp-block-paragraph">したがって、変数の値にHTMLタグを表示する際には、以下のようにそれぞれ別に””でくくる必要があります。</p>



<p class="codepen" data-height="265" data-theme-id="default" data-default-tab="js,result" data-user="BizOnline" data-slug-hash="QWwRKad" style="height: 265px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;" data-pen-title="document.write7">
  <span>See the Pen <a href="https://codepen.io/BizOnline/pen/QWwRKad">
  document.write7</a> by ビズドットオンライン (<a href="https://codepen.io/BizOnline">@BizOnline</a>)
  on <a href="https://codepen.io">CodePen</a>.</span>
</p>
<script async="" src="https://static.codepen.io/assets/embed/ei.js"></script>



<p class="wp-block-paragraph">そうしないと、以下のように文字列の一部として認識されてしまいます。</p>



<p class="codepen" data-height="265" data-theme-id="default" data-default-tab="js,result" data-user="BizOnline" data-slug-hash="bGNywBV" style="height: 265px; box-sizing: border-box; display: flex; align-items: center; justify-content: center; border: 2px solid; margin: 1em 0; padding: 1em;" data-pen-title="document.write4">
  <span>See the Pen <a href="https://codepen.io/BizOnline/pen/bGNywBV">
  document.write4</a> by ビズドットオンライン (<a href="https://codepen.io/BizOnline">@BizOnline</a>)
  on <a href="https://codepen.io">CodePen</a>.</span>
</p>
<script async="" src="https://static.codepen.io/assets/embed/ei.js"></script>



<p class="wp-block-paragraph">初心者の方ほど、この点を誤ってしまうため注意が必要です。</p>



<h2 class="wp-block-heading"><span id="toc4">document(オブジェクト).write(メソッド)</span></h2>



<p class="wp-block-paragraph">ここまでの解説で、「<strong>document.write()</strong>」を利用すれば指定した文字列を表示できることが分かりました。</p>



<p class="wp-block-paragraph">この章では「<strong>document.write()</strong>」について少しだけ深堀して補足します。</p>



<h3 class="wp-block-heading"><span id="toc5">document　⇒　オブジェクト</span></h3>



<p class="wp-block-paragraph">「<strong>document.write()</strong>」の「document」は<strong><span class="marker-under">JavaScriptの中の１つのオブジェクトです。</span></strong></p>



<p class="wp-block-paragraph">オブジェクトは、目に見える対象物のことを表し、具体的にこのページで解説したdocumentは「今見ているページ」のことを指し示しています。</p>



<h3 class="wp-block-heading"><span id="toc6">write　⇒　メソッド</span></h3>



<p class="wp-block-paragraph">対して、write()は「<strong><span class="marker-under">documentオブジェクトのメソッド</span></strong>」のこと。</p>



<p class="wp-block-paragraph">メソッドとは、オブジェクトに備えらている「<strong>動作</strong>」のことです。具体的に説明すると「write()」は、（）の中に指定した文字列を書き込む処理のことを表しています。</p>



<p class="wp-block-paragraph">すなわち「document.write()」は、今見ているページに「<strong>（）の中の内容を書き込む</strong>」処理を表している処理であると理解できます。初心者の方であれば、オブジェクトとメソッドについてはまだ理解できていない、という方もいらっしゃるかもしれませんが、ここではなんとなくの意味をつかめればOKです。</p>



<div class="wp-block-cocoon-blocks-label-box-1 label-box block-box"><div class="label-box-label block-box-label box-label"><span class="label-box-label-text block-box-label-text box-label-text">document.write()の意味</span></div><div class="label-box-content block-box-content box-content">
<p class="wp-block-paragraph">document　⇒　<strong>今見ているページ</strong></p>



<p class="wp-block-paragraph"><strong>に</strong></p>



<p class="wp-block-paragraph">write()　⇒　<strong>(　)の中の内容を書き込む</strong>　</p>
</div></div>



<h2 class="wp-block-heading"><span id="toc7">JavaScriptを体系的に学びたい方は</span></h2>



<p class="wp-block-paragraph"><strong><span class="marker-under">プログラミングをより実践的に学びたい―。実際にコーディングをしながら学びたい―。独学に限界を感じている―。</span></strong></p>



<p class="wp-block-paragraph">そんな方には、無料体験/オンライン完結もあるプログラミングスクールで学ぶのがおすすめです。都度検索しながら知識を補完していくのではなく、１から体系立てて学ぶことで短時間・かつ効率的にスキルハックすることが可能です。</p>



<p class="wp-block-paragraph">各プログラミングスクールの特徴をまとめた記事をこちらに記載しておきますので、是非ご覧ください。</p>



<figure class="wp-block-embed-wordpress wp-block-embed is-type-wp-embed is-provider-ビズドットオンライン"><div class="wp-block-embed__wrapper">

<a href="https://it-biz.online/lifehack/programming/" title="おすすめプログラミングスクールTOP５【現役エンジニア推薦】" class="blogcard-wrap internal-blogcard-wrap a-wrap cf" target="_blank"><div class="blogcard internal-blogcard ib-left cf"><div class="blogcard-label internal-blogcard-label"><span class="fa"></span></div><figure class="blogcard-thumbnail internal-blogcard-thumbnail"><img loading="lazy" decoding="async" width="320" height="180" src="https://it-biz.online/wp-content/uploads/2021/01/programming-320x180.png" class="blogcard-thumb-image internal-blogcard-thumb-image wp-post-image" alt="" srcset="https://it-biz.online/wp-content/uploads/2021/01/programming-320x180.png 320w, https://it-biz.online/wp-content/uploads/2021/01/programming-300x168.png 300w, https://it-biz.online/wp-content/uploads/2021/01/programming-500x280.png 500w, https://it-biz.online/wp-content/uploads/2021/01/programming-768x429.png 768w, https://it-biz.online/wp-content/uploads/2021/01/programming-800x447.png 800w, https://it-biz.online/wp-content/uploads/2021/01/programming-240x135.png 240w, https://it-biz.online/wp-content/uploads/2021/01/programming-640x360.png 640w, https://it-biz.online/wp-content/uploads/2021/01/programming-1024x573.png 1024w, https://it-biz.online/wp-content/uploads/2021/01/programming.png 1354w" sizes="(max-width: 320px) 100vw, 320px" /></figure><div class="blogcard-content internal-blogcard-content"><div class="blogcard-title internal-blogcard-title">おすすめプログラミングスクールTOP５【現役エンジニア推薦】</div><div class="blogcard-snippet internal-blogcard-snippet">プログラミングスキルを習得したい社会人・学生の方へおすすめしたいプログラミングスクールをニーズ別に３つに絞ってご紹介します。本当に未経験からでも実務レベルのスキルはみにつくか？現役エンジニアが口コミや実体験をもとに解説します。</div></div><div class="blogcard-footer internal-blogcard-footer cf"><div class="blogcard-site internal-blogcard-site"><div class="blogcard-favicon internal-blogcard-favicon"><img loading="lazy" decoding="async" src="https://www.google.com/s2/favicons?domain=https://it-biz.online" alt="" class="blogcard-favicon-image internal-blogcard-favicon-image" width="16" height="16" /></div><div class="blogcard-domain internal-blogcard-domain">it-biz.online</div></div><div class="blogcard-date internal-blogcard-date"><div class="blogcard-post-date internal-blogcard-post-date">2023.05.30</div></div></div></div></a>
</div></figure>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>【HTML】articleタグとは？section・divとの違いと使い方を初心者向けに解説</title>
		<link>https://it-biz.online/web-design/html-article/</link>
		
		<dc:creator><![CDATA[bizonline_admin]]></dc:creator>
		<pubDate>Tue, 03 Mar 2026 11:10:18 +0000</pubDate>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[WEBデザイン]]></category>
		<guid isPermaLink="false">https://it-biz.online/?p=10562</guid>

					<description><![CDATA[HTMLのarticleタグとは何かを初心者向けに解説します。section・div・mainとの違い、ブログ記事やニュースカードでの使い方、使わないほうがよい場面まで整理します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">HTMLのセマンティックタグを学んでいると、<code>article</code> タグが出てきます。ただ、<code>section</code> や <code>div</code> と何が違うのか、最初はかなり迷いやすいタグです。</p>



<p class="wp-block-paragraph"><strong><span class="marker-under">articleタグとは、ブログ記事・ニュース記事・投稿カードのように、それだけを取り出しても意味が通じる独立した内容を囲むタグ</span></strong>です。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">この記事では、まずページ構造のイメージを見てから、articleタグの使いどころ、sectionやdivとの違い、実務での書き方を整理します。</p>
</div></div>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-7" checked><label class="toc-title" for="toc-checkbox-7">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">HTML：articleタグを書くと画面ではこう見える</a></li><li><a href="#toc2" tabindex="0">articleタグは単独で成立する内容に使う</a></li><li><a href="#toc3" tabindex="0">articleタグの基本的な書き方</a></li><li><a href="#toc4" tabindex="0">section・div・mainとの違い</a></li><li><a href="#toc5" tabindex="0">実務でよく使うarticleタグの場面</a></li><li><a href="#toc6" tabindex="0">articleタグを使わないほうがよい場面</a></li><li><a href="#toc7" tabindex="0">articleタグでよくあるミス</a></li><li><a href="#toc8" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">HTML：articleタグを書くと画面ではこう見える</span></h2>



<p class="wp-block-paragraph">articleタグは、ページ全体の中にある「単独で読める内容」を囲むときに使います。まずは、記事カードのソースコードと、ブラウザで見える表示結果を並べて確認してみましょう。</p>



<figure class="wp-block-image size-large"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2026/04/html-article-code-result.png" alt="articleタグのソースコードとブラウザでの表示結果を並べた説明画像"/></figure>



<p class="wp-block-paragraph">この画像で見ると、左側の <code>&lt;article&gt;</code> で囲んだ範囲が、右側では1つの記事カードとして見えていることが分かります。ただし articleタグは見た目をカードにするためのタグではありません。ページの中にある一つの内容を、意味のある単位として囲むためのタグです。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img wpfc-lazyload-disable="true" decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>articleは「記事っぽい見た目」ではなく、「単体で読んでも意味があるか」で判断すると分かりやすいです。</p>
</div></div>



<h2 class="wp-block-heading"><span id="toc2">articleタグは単独で成立する内容に使う</span></h2>



<p class="wp-block-paragraph"><code>article</code> タグは、文書やページの中で独立して配布・再利用できる内容を表すために使います。初心者向けに言い換えると、「<strong>この部分だけを切り出しても、一つの読み物として意味が分かるか</strong>」が判断の軸になります。</p>



<ul class="wp-block-list">
<li>ブログ記事の本文</li>



<li>ニュースサイトの各ニュース</li>



<li>検索結果や記事一覧に並ぶ投稿カード</li>



<li>ユーザーのレビューやコメント</li>



<li>商品紹介の中でも、単独で成り立つレビュー記事</li>
</ul>



<p class="wp-block-paragraph">逆に、ページ内の単なる装飾用の箱や、意味のないレイアウト調整には articleタグを使いません。その場合は <a href="https://it-biz.online/web-design/div/">divタグ</a> のほうが自然です。</p>



<h2 class="wp-block-heading"><span id="toc3">articleタグの基本的な書き方</span></h2>



<p class="wp-block-paragraph">基本形は、独立した内容全体を <code>&lt;article&gt;</code> で囲みます。中には見出しや本文、日付、画像などを入れられます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;article&gt;
  &lt;h2&gt;HTMLの基本を学ぶ&lt;/h2&gt;
  &lt;p&gt;HTMLはWebページの構造を作るための言語です。&lt;/p&gt;
  &lt;a href="/web-design/html-basic/"&gt;続きを読む&lt;/a&gt;
&lt;/article&gt;</pre>



<p class="wp-block-paragraph">この例は、記事一覧に表示される1つの記事カードのように考えると分かりやすいです。タイトル、概要、リンクがまとまっており、このブロックだけを見ても「HTMLの基本を学ぶ記事への案内」だと分かります。</p>



<p class="wp-block-paragraph">articleタグの中には、さらに <code>header</code>、<code>section</code>、<code>footer</code> などを入れて、記事の内部構造を分けることもあります。articleは大きな独立単位、その中の話題分けに section を使う、と考えると整理しやすいです。</p>



<h2 class="wp-block-heading"><span id="toc4">section・div・mainとの違い</span></h2>



<p class="wp-block-paragraph">articleタグで迷う一番の原因は、section、div、mainとの違いです。それぞれ役割が違うため、「どれでも同じ箱」と考えると混乱します。</p>



<figure class="wp-block-table is-style-regular"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>タグ</th><th>役割</th><th>判断の目安</th></tr></thead><tbody><tr><td><code>article</code></td><td>単独で成立する内容</td><td>この部分だけ取り出しても読めるか</td></tr><tr><td><code>section</code></td><td>ページや記事内の話題の区切り</td><td>見出しを付けられる意味のまとまりか</td></tr><tr><td><code>div</code></td><td>意味を持たない汎用的な箱</td><td>レイアウトやCSSのための箱か</td></tr><tr><td><code>main</code></td><td>ページの主要コンテンツ</td><td>そのページの中心部分全体か</td></tr></tbody></table></div></figure>



<p class="wp-block-paragraph">たとえばブログ記事ページなら、ページの主要部分を <a href="https://it-biz.online/web-design/main/">mainタグ</a> で囲み、その中に記事本文として articleタグを置き、記事内の章を <a href="https://it-biz.online/web-design/html-section/">sectionタグ</a> で分ける、という構造が考えられます。</p>



<h2 class="wp-block-heading"><span id="toc5">実務でよく使うarticleタグの場面</span></h2>



<p class="wp-block-paragraph">実務でarticleタグを見かけやすいのは、ブログやニュース、メディアサイトです。特に記事一覧ページでは、同じ形のカードが複数並びます。各カードはそれぞれ別の記事を表すので、articleタグと相性がよいです。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;main&gt;
  &lt;article&gt;
    &lt;h2&gt;HTMLとは？&lt;/h2&gt;
    &lt;p&gt;HTMLの役割を初心者向けに解説します。&lt;/p&gt;
  &lt;/article&gt;

  &lt;article&gt;
    &lt;h2&gt;CSSとは？&lt;/h2&gt;
    &lt;p&gt;CSSで見た目を整える基本を解説します。&lt;/p&gt;
  &lt;/article&gt;
&lt;/main&gt;</pre>



<p class="wp-block-paragraph">このコードでは、2つのarticleがそれぞれ独立した記事カードになっています。カードの見た目はCSSで整えますが、HTML上では「それぞれが独立した記事の案内である」と分かる構造になっています。</p>



<h2 class="wp-block-heading"><span id="toc6">articleタグを使わないほうがよい場面</span></h2>



<p class="wp-block-paragraph">articleタグは便利ですが、何でも囲めばよいわけではありません。単独で意味が通じない部分には向きません。</p>



<ul class="wp-block-list">
<li>デザイン調整だけの箱</li>



<li>ボタンや画像を横並びにするだけのコンテナ</li>



<li>ページ全体の主要部分を表したいだけの場所</li>



<li>記事内の章や小見出し単位の区切り</li>
</ul>



<p class="wp-block-paragraph">たとえば、カードを横並びにするためだけの外枠には divタグを使うほうが自然です。一方、その外枠の中に並ぶ1つ1つの記事カードは articleタグで表せる場合があります。この違いが見えてくると、セマンティックHTMLの理解がかなり進みます。</p>



<h2 class="wp-block-heading"><span id="toc7">articleタグでよくあるミス</span></h2>



<ul class="wp-block-list">
<li>レイアウト用の箱をすべて article にしてしまう</li>



<li>単独で読めない小さな部品にも article を使う</li>



<li>article の中に見出しがなく、何のまとまりか分かりにくい</li>



<li>section との違いを考えず、話題の区切りまで article にしてしまう</li>



<li>CSSの見た目だけでタグを選んでしまう</li>
</ul>



<p class="wp-block-paragraph">タグ選びで迷ったら、「このまとまりだけを検索結果やRSS、記事一覧に出しても意味が通じるか」と考えてみてください。通じるならarticle候補、通じないならsectionやdivのほうが自然なことが多いです。</p>



<h2 class="wp-block-heading"><span id="toc8">まとめ</span></h2>



<p class="wp-block-paragraph">articleタグは、HTMLの中で「独立した内容」を表すためのタグです。見た目を作るための箱ではなく、内容の意味をブラウザや読み手に伝えるためのタグとして考えると分かりやすくなります。</p>



<ul class="wp-block-list">
<li>articleタグは単独で読める内容に使う</li>



<li>ブログ記事、ニュース、投稿カード、レビューなどと相性がよい</li>



<li>sectionは話題の区切り、divは意味を持たない箱</li>



<li>迷ったら「この部分だけ取り出して意味が通じるか」で判断する</li>
</ul>



<p class="wp-block-paragraph">セマンティックHTML全体を学びたい場合は、まず <a href="https://it-biz.online/web-design/semantic-html/">セマンティックHTMLの基本</a> を押さえたうえで、<a href="https://it-biz.online/web-design/html-section/">sectionタグ</a>、articleタグ、mainタグの役割を順番に整理すると理解しやすいです。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>【HTML】inputタグとは？type属性・name属性・valueの使い方を初心者向けに解説</title>
		<link>https://it-biz.online/web-design/html-input/</link>
		
		<dc:creator><![CDATA[bizonline_admin]]></dc:creator>
		<pubDate>Sat, 25 Apr 2026 11:10:04 +0000</pubDate>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[WEBデザイン]]></category>
		<guid isPermaLink="false">https://it-biz.online/?p=10561</guid>

					<description><![CDATA[HTMLのinputタグとは何かを初心者向けに解説します。type属性、name属性、value属性、placeholder、labelとの関係、問い合わせフォームでの使い方までわかりやすく整理します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">HTMLで問い合わせフォームや会員登録フォームを作るとき、まず出てくるのが <code>input</code> タグです。画面に入力欄を表示するための基本タグですが、初心者のうちは <code>type</code>、<code>name</code>、<code>value</code>、<code>placeholder</code> の役割が混ざりやすいところでもあります。</p>



<p class="wp-block-paragraph">結論からいうと、<strong><span class="marker-under">inputタグとは、ユーザーに文字入力・選択・チェックなどをしてもらうためのフォーム部品を作るタグ</span></strong>です。この記事では、まず「ソースコードを書くと画面でどう見えるか」を確認してから、inputタグの基本、よく使う属性、実務での使いどころまで整理します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-8" checked><label class="toc-title" for="toc-checkbox-8">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">まず見てください：inputタグを書くと画面ではこう見える</a></li><li><a href="#toc2" tabindex="0">結論：inputタグはフォーム部品を作るための基本タグ</a></li><li><a href="#toc3" tabindex="0">なぜinputタグだけではフォームとして足りないのか</a></li><li><a href="#toc4" tabindex="0">inputタグの基本的な書き方</a></li><li><a href="#toc5" tabindex="0">type属性で入力欄の種類が変わる</a></li><li><a href="#toc6" tabindex="0">name属性とvalue属性は送信データを考えるための属性</a></li><li><a href="#toc7" tabindex="0">実務でよく見るinputタグの例</a></li><li><a href="#toc8" tabindex="0">inputタグでよくあるミス</a></li><li><a href="#toc9" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">まず見てください：inputタグを書くと画面ではこう見える</span></h2>



<p class="wp-block-paragraph">最初に、ソースコードとブラウザでの表示結果を並べて見てみましょう。左側がHTMLに書くコード、右側がそのコードをブラウザで表示したときのイメージです。</p>



<figure class="wp-block-image size-large"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2026/04/html-input-code-result.png" alt="inputタグのソースコードとブラウザでの表示結果を並べた説明画像"/></figure>



<p class="wp-block-paragraph">この画像で見てほしいのは、<code>&lt;input type="email"&gt;</code> が画面上ではメールアドレス用の入力欄として表示され、<code>&lt;input type="checkbox"&gt;</code> がチェックボックスとして表示される点です。HTMLのコードは少し記号が多く見えますが、右側の画面と対応させると「どのコードがどの部品になっているか」が追いやすくなります。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img wpfc-lazyload-disable="true" decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>inputタグは「入力欄を作るタグ」ですが、実務では「どんなデータとして送るか」までセットで考えると理解しやすいです。</p>
</div></div>



<h2 class="wp-block-heading"><span id="toc2">結論：inputタグはフォーム部品を作るための基本タグ</span></h2>



<p class="wp-block-paragraph"><code>input</code> タグは、フォームの中でユーザーから情報を受け取るために使います。テキスト入力、メールアドレス入力、パスワード入力、チェックボックス、ラジオボタン、送信ボタンなど、かなり多くの部品を inputタグだけで作れます。</p>



<ul class="wp-block-list">
<li><code>type</code> で入力欄の種類を決める</li>
<li><code>name</code> で送信時のデータ名を決める</li>
<li><code>value</code> で初期値や送信される値を指定する</li>
<li><code>placeholder</code> で入力例やヒントを表示できる</li>
</ul>



<p class="wp-block-paragraph">最初はすべてを暗記しようとしなくて大丈夫です。まずは <strong>typeは見た目と入力ルール、nameは送信データ名</strong> と分けて覚えると、フォームのコードが読みやすくなります。</p>



<h2 class="wp-block-heading"><span id="toc3">なぜinputタグだけではフォームとして足りないのか</span></h2>



<p class="wp-block-paragraph">inputタグだけを書けば、たしかに入力欄は表示できます。たとえば次のコードでも、ブラウザには文字を入力できる箱が出ます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;input type="email" name="email"&gt;</pre>



<p class="wp-block-paragraph">ただし、このままだと画面を見た人には「何を入力する欄なのか」が伝わりにくくなります。メールアドレスなのか、ユーザー名なのか、問い合わせ内容なのか、入力欄だけでは判断しづらいからです。</p>



<p class="wp-block-paragraph">そのため実際のフォームでは、<a href="https://it-biz.online/web-design/html-label/">labelタグ</a>で項目名を付け、必要に応じて入力例を <code>placeholder</code> で補います。inputタグは主役ですが、単独で完結するというより、<strong>labelやformと組み合わせて初めて使いやすいフォームになる</strong>と考えるのが自然です。</p>



<h2 class="wp-block-heading"><span id="toc4">inputタグの基本的な書き方</span></h2>



<p class="wp-block-paragraph">基本形はとてもシンプルです。<code>type</code> で入力欄の種類を指定し、<code>name</code> で送信データの名前を指定します。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;label for="user-name"&gt;氏名&lt;/label&gt;
&lt;input type="text" id="user-name" name="user_name"&gt;

&lt;label for="email"&gt;メールアドレス&lt;/label&gt;
&lt;input type="email" id="email" name="email" placeholder="sample@example.com"&gt;</pre>



<p class="wp-block-paragraph">この例では、<code>id</code> と <code>label</code> の <code>for</code> を同じ値にしています。これにより、項目名と入力欄がHTML上でも関連付けられます。画面を使う人にも、読み上げ機能を使う人にも、入力欄の意味が伝わりやすくなります。</p>



<figure class="wp-block-table is-style-regular"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>属性</th><th>役割</th><th>初心者向けの覚え方</th></tr></thead><tbody><tr><td><code>type</code></td><td>入力欄の種類を決める</td><td>どんな部品にするか</td></tr><tr><td><code>id</code></td><td>ページ内でその要素を識別する</td><td>labelとつなぐ目印</td></tr><tr><td><code>name</code></td><td>送信時のデータ名になる</td><td>サーバーへ渡す項目名</td></tr><tr><td><code>placeholder</code></td><td>入力例や補助ヒントを出す</td><td>項目名の代わりではなくヒント</td></tr></tbody></table></div></figure>



<h2 class="wp-block-heading"><span id="toc5">type属性で入力欄の種類が変わる</span></h2>



<p class="wp-block-paragraph">inputタグで特に重要なのが <code>type</code> 属性です。同じ inputタグでも、typeの値を変えるだけで、文字入力欄、パスワード欄、チェックボックス、日付入力などに変わります。</p>



<figure class="wp-block-table is-style-regular"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>type</th><th>作れる部品</th><th>使う場面</th></tr></thead><tbody><tr><td><code>text</code></td><td>1行のテキスト入力</td><td>氏名、会社名、検索キーワード</td></tr><tr><td><code>email</code></td><td>メールアドレス入力</td><td>会員登録、問い合わせフォーム</td></tr><tr><td><code>password</code></td><td>入力文字が隠れる欄</td><td>ログイン、パスワード登録</td></tr><tr><td><code>checkbox</code></td><td>チェックボックス</td><td>同意確認、複数選択</td></tr><tr><td><code>radio</code></td><td>ラジオボタン</td><td>性別、プラン選択、単一選択</td></tr><tr><td><code>date</code></td><td>日付入力</td><td>予約日、誕生日、期限</td></tr><tr><td><code>submit</code></td><td>送信ボタン</td><td>フォーム送信</td></tr></tbody></table></div></figure>



<p class="wp-block-paragraph">たとえばメールアドレス欄には <code>type="email"</code> を使うと、ブラウザがメールアドレスらしい形式かどうかを簡単に確認してくれることがあります。スマートフォンでは入力しやすいキーボードが出る場合もあり、見た目以上に使いやすさへ影響します。</p>



<h2 class="wp-block-heading"><span id="toc6">name属性とvalue属性は送信データを考えるための属性</span></h2>



<p class="wp-block-paragraph">フォームを学び始めたときにつまずきやすいのが、<code>name</code> と <code>value</code> の違いです。画面に入力欄を表示するだけなら見落としがちですが、フォームを送信する場面ではとても重要です。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;input type="checkbox" id="news" name="newsletter" value="yes"&gt;
&lt;label for="news"&gt;お知らせメールを受け取る&lt;/label&gt;</pre>



<p class="wp-block-paragraph">この例では、チェックされた状態でフォームが送信されると、<code>newsletter=yes</code> のように「name=value」の形でデータが送られます。つまり <code>name</code> は項目名、<code>value</code> はその項目の値です。</p>



<p class="wp-block-paragraph">テキスト入力では、ユーザーが入力した文字が value として扱われます。一方、チェックボックスやラジオボタンでは、選ばれたときに送る値をあらかじめ <code>value</code> で指定しておくことが多いです。</p>



<h2 class="wp-block-heading"><span id="toc7">実務でよく見るinputタグの例</span></h2>



<p class="wp-block-paragraph">実務でよく見るのは、問い合わせフォームや会員登録フォームです。ここでは、名前、メールアドレス、同意チェックを持つ小さなフォームを例にします。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;form action="/contact" method="post"&gt;
  &lt;label for="name"&gt;お名前&lt;/label&gt;
  &lt;input type="text" id="name" name="name" required&gt;

  &lt;label for="email"&gt;メールアドレス&lt;/label&gt;
  &lt;input type="email" id="email" name="email" placeholder="sample@example.com" required&gt;

  &lt;label for="agree"&gt;
    &lt;input type="checkbox" id="agree" name="agree" value="yes" required&gt;
    個人情報の取り扱いに同意する
  &lt;/label&gt;

  &lt;button type="submit"&gt;送信する&lt;/button&gt;
&lt;/form&gt;</pre>



<p class="wp-block-paragraph">このコードでは、入力欄を作る inputタグだけでなく、フォーム全体を囲む <a href="https://it-biz.online/web-design/form/">formタグ</a>、項目名を示す labelタグ、送信ボタンを作る buttonタグが一緒に使われています。実際のフォームでは、inputタグを単独で見るより、<strong>フォーム全体の中でどの役割を持っているか</strong>を見るほうが理解しやすいです。</p>



<h2 class="wp-block-heading"><span id="toc8">inputタグでよくあるミス</span></h2>



<ul class="wp-block-list">
<li><code>name</code> を付け忘れて、送信データとして扱いにくくなる</li>
<li>項目名を <code>placeholder</code> だけに頼ってしまう</li>
<li>メールアドレス欄なのに <code>type="text"</code> のままにする</li>
<li>チェックボックスやラジオボタンの <code>value</code> を考えずに書く</li>
<li><code>required</code> だけで本格的な入力チェックが完了したと思い込む</li>
</ul>



<p class="wp-block-paragraph">特に大事なのは、placeholderをlabelの代わりにしないことです。placeholderは入力例を示すためには便利ですが、入力中に消えたり薄くなったりします。フォームの項目名は、labelタグで画面上に残すほうが親切です。</p>



<h2 class="wp-block-heading"><span id="toc9">まとめ</span></h2>



<p class="wp-block-paragraph">inputタグは、HTMLフォームの中心になるタグです。最初は「入力欄を表示するタグ」と覚えて問題ありませんが、少し慣れてきたら <code>type</code>、<code>name</code>、<code>value</code> の役割まで分けて考えると、フォーム全体の理解が一気に進みます。</p>



<ul class="wp-block-list">
<li>inputタグはユーザー入力を受け取るフォーム部品を作る</li>
<li>type属性で入力欄の種類が変わる</li>
<li>name属性は送信時のデータ名になる</li>
<li>labelタグと組み合わせると、使いやすく意味の伝わるフォームになる</li>
</ul>



<p class="wp-block-paragraph">次に学ぶなら、inputタグと一緒に使う <a href="https://it-biz.online/web-design/html-label/">labelタグ</a> や、フォーム全体を作る <a href="https://it-biz.online/web-design/form/">formタグ</a> を読むと、HTMLフォームの全体像がつかみやすくなります。</p>

]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>【HTML】buttonタグとは？type属性とsubmit・reset・buttonの違いを初心者向けに解説</title>
		<link>https://it-biz.online/web-design/html-button/</link>
		
		<dc:creator><![CDATA[bizonline_admin]]></dc:creator>
		<pubDate>Sat, 25 Apr 2026 11:09:00 +0000</pubDate>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[WEBデザイン]]></category>
		<guid isPermaLink="false">https://it-biz.online/?p=10560</guid>

					<description><![CDATA[HTMLのbuttonタグとは何かを初心者向けに解説します。type属性のsubmit・reset・buttonの違い、formタグとの関係、input type submitとの違い、よくあるミスまで整理します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">HTMLのフォームでは、最後に「送信する」「リセットする」「次へ進む」のようなボタンを置くことがよくあります。このときに使う代表的なタグが <code>button</code> タグです。</p>



<p class="wp-block-paragraph">ただ、buttonタグは見た目だけで理解すると少し危険です。フォームの中では、<code>type</code> 属性によって押した後の動きが変わるため、何も考えずに書くと思わぬ送信が起きることがあります。結論からいうと、<strong><span class="marker-under">buttonタグはボタンを作るタグで、type属性によって送信・リセット・通常ボタンの役割を分けます</span></strong>。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-9" checked><label class="toc-title" for="toc-checkbox-9">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">buttonタグを書くと画面ではこう見える</a></li><li><a href="#toc2" tabindex="0">結論：buttonタグはクリックできるボタンを作るタグ</a></li><li><a href="#toc3" tabindex="0">buttonタグの基本的な書き方</a></li><li><a href="#toc4" tabindex="0">type属性の3種類を整理する</a></li><li><a href="#toc5" tabindex="0">formタグと一緒に使うbuttonタグの例</a></li><li><a href="#toc6" tabindex="0">input type submitとの違い</a></li><li><a href="#toc7" tabindex="0">buttonタグでよくあるミス</a></li><li><a href="#toc8" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">buttonタグを書くと画面ではこう見える</span></h2>



<p class="wp-block-paragraph">buttonタグを理解するときは、最初に「コード」と「画面で見えるボタン」を対応させるのが近道です。左側がHTMLに書くコード、右側がブラウザで表示したときのボタンです。</p>



<figure class="wp-block-image size-large"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2026/04/html-button-code-result.png" alt="buttonタグのソースコードとブラウザでの表示結果を並べた説明画像"/></figure>



<p class="wp-block-paragraph">この画像で見てほしいのは、画面上ではどれも「押せるボタン」に見える一方で、左側の <code>type</code> の値によって役割が変わる点です。<code>submit</code> はフォーム送信、<code>reset</code> は入力内容のリセット、<code>button</code> はそれ自体では送信しない通常ボタンとして扱います。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img wpfc-lazyload-disable="true" decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>フォーム内のbuttonは、迷ったらまず type を書く。これだけで事故がかなり減ります。</p>
</div></div>



<h2 class="wp-block-heading"><span id="toc2">結論：buttonタグはクリックできるボタンを作るタグ</span></h2>



<p class="wp-block-paragraph"><code>button</code> タグは、クリックできるボタンをHTML上に作るためのタグです。フォーム送信ボタンとして使うこともできますし、JavaScriptと組み合わせて画面を切り替えたり、メニューを開いたりするためにも使えます。</p>



<ul class="wp-block-list">
<li><code>&lt;button type="submit"></code>: フォームを送信する</li>



<li><code>&lt;button type="reset"></code>: フォームの入力内容を初期状態に戻す</li>



<li><code>&lt;button type="button"></code>: 送信せず、JavaScriptなどで動きを付ける</li>
</ul>



<p class="wp-block-paragraph">特にフォーム内で「送信しないボタン」を置くときは、<code>type="button"</code> を付ける意識が大切です。これを忘れると、クリックしたときにフォーム送信として扱われる場合があります。</p>



<h2 class="wp-block-heading"><span id="toc3">buttonタグの基本的な書き方</span></h2>



<p class="wp-block-paragraph">基本形は、開始タグと終了タグの間にボタンに表示したい文字を入れます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;button type="submit"&gt;送信する&lt;/button&gt;</pre>



<p class="wp-block-paragraph">このように書くと、画面には「送信する」と書かれたボタンが表示されます。<code>input type="submit"</code> でも送信ボタンは作れますが、buttonタグは中にテキストだけでなく、アイコンや強調用の要素を入れやすい点が特徴です。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;button type="button"&gt;
  &lt;span&gt;メニューを開く&lt;/span&gt;
&lt;/button&gt;</pre>



<p class="wp-block-paragraph">初心者の段階では、まず「フォーム送信なら <code>submit</code>、送信しない画面操作なら <code>button</code>」と分けて覚えると実務で困りにくくなります。</p>



<h2 class="wp-block-heading"><span id="toc4">type属性の3種類を整理する</span></h2>



<p class="wp-block-paragraph">buttonタグで一番大切なのは <code>type</code> 属性です。特にフォームの中では、typeを省略すると意図しない送信につながることがあるため、明示しておくのが安全です。</p>



<figure class="wp-block-table is-style-regular"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>type</th><th>役割</th><th>使う場面</th></tr></thead><tbody><tr><td><code>submit</code></td><td>フォームを送信する</td><td>問い合わせ、ログイン、会員登録</td></tr><tr><td><code>reset</code></td><td>入力内容を初期状態へ戻す</td><td>入力をやり直すボタン。ただし実務では慎重に使う</td></tr><tr><td><code>button</code></td><td>それ自体では送信しない</td><td>モーダルを開く、表示を切り替える、JavaScriptで処理する</td></tr></tbody></table></div></figure>



<p class="wp-block-paragraph"><code>reset</code> は便利そうに見えますが、入力済みの内容が一気に消えるため、実務のフォームではあまり気軽に置かないほうがよい場合もあります。ユーザーが間違って押すと、入力した内容を失ってしまうからです。</p>



<h2 class="wp-block-heading"><span id="toc5">formタグと一緒に使うbuttonタグの例</span></h2>



<p class="wp-block-paragraph">問い合わせフォームの最後に送信ボタンを置く例を見てみましょう。フォーム全体は <a href="https://it-biz.online/web-design/form/">formタグ</a> で囲み、入力欄には <a href="https://it-biz.online/web-design/html-input/">inputタグ</a> を使います。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;form action="/contact" method="post"&gt;
  &lt;label for="email"&gt;メールアドレス&lt;/label&gt;
  &lt;input type="email" id="email" name="email" required&gt;

  &lt;button type="submit"&gt;送信する&lt;/button&gt;
&lt;/form&gt;</pre>



<p class="wp-block-paragraph">この場合、buttonタグには <code>type="submit"</code> を指定しています。クリックすると、formタグの <code>action</code> に指定された送信先へフォームデータを送る流れになります。</p>



<p class="wp-block-paragraph">一方、入力欄の横に「パスワードを表示する」ボタンを置くような場合は、フォーム送信ではなく画面操作です。この場合は <code>type="button"</code> を使います。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;button type="button"&gt;パスワードを表示する&lt;/button&gt;</pre>



<h2 class="wp-block-heading"><span id="toc6">input type submitとの違い</span></h2>



<p class="wp-block-paragraph">HTMLでは、送信ボタンを <code>&lt;input type="submit"&gt;</code> で作ることもできます。どちらも送信ボタンとして使えますが、書き方と柔軟性に違いがあります。</p>



<figure class="wp-block-table is-style-regular"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>書き方</th><th>特徴</th><th>初心者向けの使い分け</th></tr></thead><tbody><tr><td><code>&lt;input type="submit" value="送信"&gt;</code></td><td>短く書ける</td><td>単純な送信ボタン</td></tr><tr><td><code>&lt;button type="submit"&gt;送信&lt;/button&gt;</code></td><td>開始タグと終了タグの中に内容を書ける</td><td>文字やアイコンを含めたいボタン</td></tr></tbody></table></div></figure>



<p class="wp-block-paragraph">現在のWeb制作では、見た目やアクセシビリティを整えやすいこともあり、buttonタグを使う場面が多いです。ただし、どちらを使っても大事なのは「何のためのボタンか」をコード上で分かるようにすることです。</p>



<h2 class="wp-block-heading"><span id="toc7">buttonタグでよくあるミス</span></h2>



<ul class="wp-block-list">
<li>フォーム内で <code>type</code> を省略して、意図せず送信ボタンになる</li>



<li>画面操作用ボタンなのに <code>type="submit"</code> のままにする</li>



<li><code>reset</code> ボタンを置いて、ユーザーの入力内容を消しやすくしてしまう</li>



<li>リンクの移動なのに buttonタグだけで作り、キーボード操作や意味が分かりにくくなる</li>



<li>ボタン文言が「送信」だけで、何を送るのか分かりにくい</li>
</ul>



<p class="wp-block-paragraph">ボタンは小さな部品ですが、ユーザーにとっては次の行動を決める重要な目印です。「クリックできる見た目」だけでなく、送信なのか、取り消しなのか、画面操作なのかまで分かるように作ることが大切です。</p>



<h2 class="wp-block-heading"><span id="toc8">まとめ</span></h2>



<p class="wp-block-paragraph">buttonタグは、HTMLでクリックできるボタンを作るためのタグです。特にフォームの中では、type属性によって押した後の動きが変わります。</p>



<ul class="wp-block-list">
<li><code>type="submit"</code> はフォーム送信用</li>



<li><code>type="reset"</code> は入力内容を戻すためのもの</li>



<li><code>type="button"</code> はJavaScriptなどで動きを付ける通常ボタン</li>



<li>フォーム内ではtypeを明示すると、意図しない送信を避けやすい</li>
</ul>



<p class="wp-block-paragraph">フォーム全体の理解を深めたい場合は、<a href="https://it-biz.online/web-design/form/">formタグ</a>、<a href="https://it-biz.online/web-design/html-input/">inputタグ</a>、<a href="https://it-biz.online/web-design/html-label/">labelタグ</a> をセットで確認すると、画面部品の役割がかなり見えやすくなります。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>HTMLコメントアウトとは？書き方・使いどころ・注意点を初心者向けに解説</title>
		<link>https://it-biz.online/web-design/html-comment-out/</link>
		
		<dc:creator><![CDATA[bizonline_admin]]></dc:creator>
		<pubDate>Sat, 25 Apr 2026 11:07:29 +0000</pubDate>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[WEBデザイン]]></category>
		<guid isPermaLink="false">https://it-biz.online/?p=10563</guid>

					<description><![CDATA[HTMLコメントアウトとは何かを初心者向けに解説します。基本構文、複数行コメント、使いどころ、CSSやJavaScriptコメントとの違い、秘密情報を書いてはいけない理由まで整理します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">HTMLを書いていると、コードの中にメモを残したい場面があります。たとえば「ここはあとで修正する」「この部分は一時的に非表示にする」「このブロックはヘッダーです」といったメモです。そんなときに使うのが、HTMLのコメントアウトです。</p>



<p class="wp-block-paragraph">結論からいうと、<strong><span class="marker-under">HTMLコメントアウトとは、コード内には残るけれどブラウザ画面には表示されないメモを書くための仕組み</span></strong>です。便利な一方で、ソースコードを見れば読めてしまうため、パスワードや秘密情報を書くのは絶対に避けます。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-10" checked><label class="toc-title" for="toc-checkbox-10">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">まず見てください：HTMLコメントは画面には表示されない</a></li><li><a href="#toc2" tabindex="0">HTMLコメントアウトは &lt;!-- と --> で囲む</a></li><li><a href="#toc3" tabindex="0">HTMLコメントアウトの基本的な使い方</a></li><li><a href="#toc4" tabindex="0">HTMLコメントアウトを使う場面</a></li><li><a href="#toc5" tabindex="0">HTMLコメントアウトで秘密情報を隠してはいけない</a></li><li><a href="#toc6" tabindex="0">CSSやJavaScriptのコメントとの違い</a></li><li><a href="#toc7" tabindex="0">HTMLコメントアウトでよくあるミス</a></li><li><a href="#toc8" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">まず見てください：HTMLコメントは画面には表示されない</span></h2>



<p class="wp-block-paragraph">HTMLコメントアウトは、コード上には存在しますが、ブラウザの通常表示には出ません。まずは、左側のソースコードと右側の表示結果を見比べて、「コードにはあるのに画面には見えない」という関係を押さえましょう。</p>



<figure class="wp-block-image size-large"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2026/04/html-comment-code-result.png" alt="HTMLコメントアウトのソースコードとブラウザでの表示結果を並べた説明画像"/></figure>



<p class="wp-block-paragraph">この画像で見てほしいのは、左側にある <code>&lt;!-- このメモは画面には出ません --&gt;</code> が、右側のブラウザ表示には出ていない点です。ただし、コメントは「消える」のではなく「表示されない」だけです。HTMLファイルの中には残るため、作業メモには向いていますが、秘密を隠す場所ではありません。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img wpfc-lazyload-disable="true" decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>HTMLコメントは「自分やチームへのメモ」です。利用者に見せない説明書きとして使います。</p>
</div></div>



<h2 class="wp-block-heading"><span id="toc2">HTMLコメントアウトは &lt;!-- と --> で囲む</span></h2>



<p class="wp-block-paragraph">HTMLでコメントを書くときは、コメントにしたい文字を <code>&lt;!--</code> と <code>--&gt;</code> で囲みます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;!-- ここにコメントを書きます --&gt;</pre>



<p class="wp-block-paragraph">この部分はブラウザ画面には表示されません。HTMLの構造を整理したり、一時的にコードを無効にしたり、他の人に意図を伝えたりするときに使います。</p>



<h2 class="wp-block-heading"><span id="toc3">HTMLコメントアウトの基本的な使い方</span></h2>



<p class="wp-block-paragraph">HTMLコメントは、1行だけでも複数行でも使えます。まずは、ページ構造の目印として使う例を見てみましょう。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;!-- ヘッダーここから --&gt;
&lt;header&gt;
  &lt;h1&gt;サイトタイトル&lt;/h1&gt;
&lt;/header&gt;
&lt;!-- ヘッダーここまで --&gt;</pre>



<p class="wp-block-paragraph">このように書くと、コードを読む人が「ここからここまでがヘッダー部分だ」と把握しやすくなります。特にHTMLが長くなったときや、複数人で編集するときには、コメントが道しるべになります。</p>



<p class="wp-block-paragraph">複数行をまとめてコメントにすることもできます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;!--
&lt;section&gt;
  &lt;h2&gt;一時的に非表示にしたい内容&lt;/h2&gt;
  &lt;p&gt;あとで使う可能性がある説明文です。&lt;/p&gt;
&lt;/section&gt;
--&gt;</pre>



<p class="wp-block-paragraph">ただし、長いコードをコメントアウトしたまま放置すると、あとから読みにくくなります。一時的な退避として使ったら、必要がなくなった時点で削除する運用にしたほうが安全です。</p>



<h2 class="wp-block-heading"><span id="toc4">HTMLコメントアウトを使う場面</span></h2>



<p class="wp-block-paragraph">コメントアウトは、初心者の学習中にも実務にもよく出てきます。便利なのは、コードの意味や作業状況をHTML内に残せるところです。</p>



<figure class="wp-block-table is-style-regular"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>使う場面</th><th>例</th><th>注意点</th></tr></thead><tbody><tr><td>構造の目印</td><td>ヘッダー、メイン、フッターの境目を書く</td><td>書きすぎると逆に読みにくい</td></tr><tr><td>作業メモ</td><td>あとで画像を差し替える、文言確認中など</td><td>公開前に不要なメモは消す</td></tr><tr><td>一時的な無効化</td><td>一部のHTMLを画面に出さない</td><td>長期間放置しない</td></tr><tr><td>チームへの共有</td><td>このブロックの意図を残す</td><td>秘密情報は書かない</td></tr></tbody></table></div></figure>



<p class="wp-block-paragraph">たとえばLPや会社サイトのHTMLでは、セクションが長くなりがちです。コメントで「サービス紹介ここから」「料金表ここまで」と残しておくと、あとから修正する人が目的の場所を見つけやすくなります。</p>



<h2 class="wp-block-heading"><span id="toc5">HTMLコメントアウトで秘密情報を隠してはいけない</span></h2>



<p class="wp-block-paragraph">HTMLコメントで一番大切な注意点は、秘密情報を絶対に書かないことです。コメントはブラウザの画面には出ませんが、HTMLソースには残ります。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;!-- NG例：公開ページに秘密情報を残さない --&gt;
&lt;!-- 管理者パスワード: example123 --&gt;</pre>



<p class="wp-block-paragraph">このような情報は、ユーザー画面に見えていなくても、ページのソースを確認すれば見えてしまう可能性があります。パスワード、APIキー、個人情報、社内メモ、未公開情報などは、HTMLコメントに残してはいけません。</p>



<h2 class="wp-block-heading"><span id="toc6">CSSやJavaScriptのコメントとの違い</span></h2>



<p class="wp-block-paragraph">HTML、CSS、JavaScriptでは、コメントの書き方が違います。HTMLでは <code>&lt;!-- --&gt;</code> を使いますが、CSSやJavaScriptでは別の記号を使います。</p>



<figure class="wp-block-table is-style-regular"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>種類</th><th>コメントの書き方</th><th>例</th></tr></thead><tbody><tr><td>HTML</td><td><code>&lt;!-- --&gt;</code></td><td><code>&lt;!-- メモ --&gt;</code></td></tr><tr><td>CSS</td><td><code>/* */</code></td><td><code>/* 色の指定 */</code></td></tr><tr><td>JavaScript</td><td><code>//</code> または <code>/* */</code></td><td><code>// 1行コメント</code></td></tr></tbody></table></div></figure>



<p class="wp-block-paragraph">HTMLファイルの中にCSSやJavaScriptを書く場合でも、どの場所に書いているかでコメント記号が変わります。HTMLの本文部分ではHTMLコメント、CSSの中ではCSSコメント、JavaScriptの中ではJavaScriptコメントを使います。</p>



<h2 class="wp-block-heading"><span id="toc7">HTMLコメントアウトでよくあるミス</span></h2>



<ul class="wp-block-list">
<li>コメントの閉じ忘れで、以降のHTMLが表示されなくなる</li>



<li>秘密情報や社内向けメモを公開HTMLに残してしまう</li>



<li>不要になった古いコードをコメントのまま放置する</li>



<li>CSSやJavaScriptのコメント記号と混同する</li>



<li>コメント内で複雑なハイフンの並びを書いて、意図しない解釈になりやすくする</li>
</ul>



<p class="wp-block-paragraph">特に閉じ忘れは初心者がつまずきやすいポイントです。<code>&lt;!--</code> を書いたら、必ず対応する <code>--&gt;</code> があるか確認しましょう。エディタの色分けが急に広い範囲へ変わった場合は、コメントの閉じ忘れを疑うと見つけやすいです。</p>



<h2 class="wp-block-heading"><span id="toc8">まとめ</span></h2>



<p class="wp-block-paragraph">HTMLコメントアウトは、コードの中にメモを残したり、一時的にHTMLを画面へ表示しないようにしたりするための仕組みです。書き方は <code>&lt;!-- コメント --&gt;</code> です。</p>



<ul class="wp-block-list">
<li>HTMLコメントはブラウザ画面には表示されない</li>



<li>コード上には残るため、秘密情報を書いてはいけない</li>



<li>構造の目印、作業メモ、一時的な無効化に使える</li>



<li>CSSやJavaScriptとはコメント記号が違う</li>
</ul>



<p class="wp-block-paragraph">HTMLの基本的な書き方を続けて整理したい場合は、<a href="https://it-biz.online/web-design/html-rule/">HTMLの書き方の基本</a> や <a href="https://it-biz.online/web-design/html-tag-list/">HTMLタグ一覧</a> も合わせて確認すると、コード全体の読み方がつかみやすくなります。</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>alt属性とは？imgタグの代替テキストの書き方を初心者向けに解説</title>
		<link>https://it-biz.online/web-design/html-alt-attribute/</link>
		
		<dc:creator><![CDATA[bizonline_admin]]></dc:creator>
		<pubDate>Sat, 25 Apr 2026 10:57:37 +0000</pubDate>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[WEBデザイン]]></category>
		<category><![CDATA[Web開発]]></category>
		<category><![CDATA[プログラミング]]></category>
		<guid isPermaLink="false">https://it-biz.online/?p=10564</guid>

					<description><![CDATA[HTMLのalt属性とは何かを初心者向けに解説します。imgタグの代替テキストの役割、画像の種類別の書き方、空のaltを使う場面、title属性やファイル名との違いまで整理します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">HTMLで画像を表示するときは <code>img</code> タグを使います。そのときによく出てくるのが <code>alt</code> 属性です。画像タグの例を見るとほぼ必ず書かれていますが、「何を書けばいいのか」「空でもいいのか」で迷いやすい属性でもあります。</p>



<p class="wp-block-paragraph">結論からいうと、<strong><span class="marker-under">alt属性とは、画像が見えない・読み上げられる・読み込めないときに、画像の意味を文字で補うための属性</span></strong>です。SEOのためだけにキーワードを詰める場所ではなく、画像が伝えている内容をテキストで伝えるために使います。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-11" checked><label class="toc-title" for="toc-checkbox-11">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">まず見てください：alt属性は画像の意味を文字で補う</a></li><li><a href="#toc2" tabindex="0">結論：alt属性は画像の代替テキストを書く場所</a></li><li><a href="#toc3" tabindex="0">alt属性が必要な理由</a></li><li><a href="#toc4" tabindex="0">alt属性の基本的な書き方</a></li><li><a href="#toc5" tabindex="0">画像の種類ごとにaltの書き方を変える</a></li><li><a href="#toc6" tabindex="0">実務で使うalt属性の例</a></li><li><a href="#toc7" tabindex="0">title属性やファイル名との違い</a></li><li><a href="#toc8" tabindex="0">alt属性でよくあるミス</a></li><li><a href="#toc9" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">まず見てください：alt属性は画像の意味を文字で補う</span></h2>



<p class="wp-block-paragraph">alt属性の役割は、画像の代わりになる説明文を用意することです。まずは、imgタグにalt属性を書いたコードと、ブラウザ側で画像の意味がどう補われるかを並べて見てみましょう。</p>



<figure class="wp-block-image size-large"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2026/04/html-alt-attribute-code-result.png" alt="alt属性のソースコードとブラウザでの表示結果を並べた説明画像"/></figure>



<p class="wp-block-paragraph">この画像で大切なのは、alt属性が「画像ファイルの名前」ではなく「画像が伝えている意味」を補う点です。左側の <code>alt="ログイン画面の入力例"</code> は、右側の画像が見えない・読み上げられる場面でも、何の画像なのかを伝えるための文章です。装飾だけの画像なら、例のように <code>alt=""</code> と空にすることもあります。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img wpfc-lazyload-disable="true" decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>alt属性は「この画像が見えなかったら、何と説明すれば伝わるか」で考えると書きやすいです。</p>
</div></div>



<h2 class="wp-block-heading"><span id="toc2">結論：alt属性は画像の代替テキストを書く場所</span></h2>



<p class="wp-block-paragraph"><code>alt</code> 属性は、<a href="https://it-biz.online/web-design/img/">imgタグ</a> に書く代替テキストです。代替テキストとは、画像そのものが使えないときに、画像の役割や内容を文字で伝えるための説明です。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;img src="contact-form.png" alt="問い合わせフォームの入力例"&gt;</pre>



<p class="wp-block-paragraph">この例では、画像が「問い合わせフォームの入力例」を示していることをalt属性で伝えています。画像ファイル名の説明ではなく、ページを読んでいる人にとって必要な意味を言葉にしている点が重要です。</p>



<h2 class="wp-block-heading"><span id="toc3">alt属性が必要な理由</span></h2>



<p class="wp-block-paragraph">alt属性が必要な理由は、大きく3つあります。どれも「画像が見える人だけに情報が偏らないようにする」ためのものです。</p>



<ul class="wp-block-list">
<li>画像が読み込めないときに内容を補える</li>
<li>スクリーンリーダーなどで画像の意味を伝えやすくなる</li>
<li>検索エンジンにも画像の内容を理解してもらいやすくなる</li>
</ul>



<p class="wp-block-paragraph">ただし、SEOだけを目的に不自然なキーワードを詰め込むのは逆効果です。alt属性は、あくまで画像の代わりになる説明です。ページの内容と関係ない言葉や、同じキーワードの連続は避けます。</p>



<h2 class="wp-block-heading"><span id="toc4">alt属性の基本的な書き方</span></h2>



<p class="wp-block-paragraph">基本形は、imgタグの中に <code>alt="説明文"</code> を書きます。説明文は長すぎず、画像の意味が伝わる自然な日本語にします。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;img src="login-screen.png" alt="ログイン画面でメールアドレスとパスワードを入力する例"&gt;</pre>



<p class="wp-block-paragraph">このように書くと、画像が表示されない状況でも「ログイン画面の入力例を示す画像だ」と分かります。単に <code>alt="画像"</code> や <code>alt="login-screen"</code> とするより、読者にとって意味が伝わりやすくなります。</p>



<h2 class="wp-block-heading"><span id="toc5">画像の種類ごとにaltの書き方を変える</span></h2>



<p class="wp-block-paragraph">alt属性は、すべての画像に同じテンションで説明を書けばよいわけではありません。画像がページ内でどんな役割を持っているかによって、書き方を変えます。</p>



<figure class="wp-block-table is-style-regular"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>画像の種類</th><th>altの考え方</th><th>例</th></tr></thead><tbody><tr><td>内容を伝える画像</td><td>画像から分かる重要な情報を書く</td><td><code>alt="商品Aの正面写真"</code></td></tr><tr><td>操作説明の画像</td><td>何の画面・手順を示すかを書く</td><td><code>alt="会員登録フォームの入力例"</code></td></tr><tr><td>リンクになっている画像</td><td>クリック先や操作の意味を書く</td><td><code>alt="資料をダウンロードする"</code></td></tr><tr><td>装飾だけの画像</td><td>空のaltにすることがある</td><td><code>alt=""</code></td></tr></tbody></table></div></figure>



<p class="wp-block-paragraph">装飾画像に長い説明を入れると、読み上げ時に余計な情報が増えてしまいます。逆に、内容を伝える画像のaltが空だと、画像を見られない人に必要な情報が届きません。画像の役割を見て、説明するか空にするかを判断します。</p>



<h2 class="wp-block-heading"><span id="toc6">実務で使うalt属性の例</span></h2>



<p class="wp-block-paragraph">ブログや企業サイトでは、alt属性を書く場面が多くあります。たとえば記事内の説明画像、商品写真、サービス紹介の図、操作手順のスクリーンショットなどです。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;img src="html-form-example.png" alt="HTMLフォームで氏名とメールアドレスを入力する例"&gt;

&lt;img src="service-flow.png" alt="問い合わせから契約までの流れを示す図"&gt;

&lt;img src="decoration-line.png" alt=""&gt;</pre>



<p class="wp-block-paragraph">1つ目と2つ目は、画像そのものが情報を持っているため説明を書いています。3つ目は装飾線のような画像を想定しているため、空のaltにしています。すべての画像へ機械的に文章を入れるのではなく、画像の役割に合わせるのがポイントです。</p>



<h2 class="wp-block-heading"><span id="toc7">title属性やファイル名との違い</span></h2>



<p class="wp-block-paragraph">alt属性は、title属性や画像ファイル名とは役割が違います。混同しやすいので、ここで整理しておきます。</p>



<figure class="wp-block-table is-style-regular"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>項目</th><th>役割</th><th>代替テキストとして使えるか</th></tr></thead><tbody><tr><td><code>alt</code></td><td>画像の代替テキスト</td><td>使える。ここが本命</td></tr><tr><td><code>title</code></td><td>補足情報として表示されることがある</td><td>altの代わりにはしない</td></tr><tr><td>ファイル名</td><td>画像ファイルを識別する名前</td><td>読者向け説明とは別物</td></tr></tbody></table></div></figure>



<p class="wp-block-paragraph">たとえば <code>img001.png</code> というファイル名では、画像の意味はほとんど伝わりません。title属性も補足には使えますが、alt属性の代わりとして考えないほうが安全です。</p>



<h2 class="wp-block-heading"><span id="toc8">alt属性でよくあるミス</span></h2>



<ul class="wp-block-list">
<li><code>alt="画像"</code> のように意味が伝わらない説明にする</li>
<li>画像と関係ないSEOキーワードを詰め込む</li>
<li>装飾画像にも長い説明を入れてしまう</li>
<li>内容を伝える画像なのに <code>alt=""</code> にしてしまう</li>
<li>title属性を書いたからalt属性はいらないと思い込む</li>
</ul>



<p class="wp-block-paragraph">alt属性は、短ければよい、長ければよいというものではありません。大事なのは、画像を見られない人にもページの意味が伝わることです。迷ったら「この画像が表示されなかったら、どんな一文があれば困らないか」と考えてみてください。</p>



<h2 class="wp-block-heading"><span id="toc9">まとめ</span></h2>



<p class="wp-block-paragraph">alt属性は、imgタグで表示する画像の意味をテキストで補うための属性です。画像が見えない状況、読み上げ環境、検索エンジンの理解などに関わるため、HTMLを書くうえでとても重要です。</p>



<ul class="wp-block-list">
<li>alt属性は画像の代替テキストを書く場所</li>
<li>画像のファイル名ではなく、画像が伝える意味を書く</li>
<li>装飾だけの画像では <code>alt=""</code> を使うことがある</li>
<li>SEOキーワードの詰め込みではなく、自然な説明を意識する</li>
</ul>



<p class="wp-block-paragraph">画像表示そのものの基本を復習したい場合は、<a href="https://it-biz.online/web-design/img/">imgタグの解説</a> や <a href="https://it-biz.online/web-design/attribute/">HTML属性の基本</a> も合わせて読むと、alt属性の位置づけがより分かりやすくなります。</p>

]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>【HTML】labelタグとは？for属性との関係と使い方を初心者向けに解説</title>
		<link>https://it-biz.online/web-design/html-label/</link>
		
		<dc:creator><![CDATA[bizonline_admin]]></dc:creator>
		<pubDate>Fri, 24 Apr 2026 10:57:43 +0000</pubDate>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[WEBデザイン]]></category>
		<guid isPermaLink="false">https://it-biz.online/?p=10536</guid>

					<description><![CDATA[HTMLのlabelタグとは何かを、フォーム画面の比較付きで初心者向けに解説します。for属性とid属性の関係、なぜ必要か、placeholderとの違い、会員登録フォームやチェックボックスでの使いどころまで整理します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">HTMLでフォームを作り始めたばかりの頃は、<code>input</code> タグだけを書いて「入力欄は表示できたからこれでOK」と思いやすいです。ですが実際には、入力欄が見えていることと、<strong>その欄が何のためのものかを相手が迷わず理解できること</strong>は別の話です。</p>



<p class="wp-block-paragraph">そこで最初に、labelタグの定義から入るのではなく、実際のフォームの見え方を比べてみましょう。labelタグは地味なタグですが、フォームの伝わりやすさをかなり大きく変えます。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-12" checked><label class="toc-title" for="toc-checkbox-12">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">まず見てください：labelなしとlabelありではフォームの伝わり方が変わる</a></li><li><a href="#toc2" tabindex="0">結論：labelタグはフォーム部品に「この欄の意味」を与えるタグ</a></li><li><a href="#toc3" tabindex="0">なぜ入力欄だけでは足りないのか</a></li><li><a href="#toc4" tabindex="0">表示結果とコードを対応させて見ると、labelの役割が分かりやすい</a></li><li><a href="#toc5" tabindex="0">labelタグとは何か</a></li><li><a href="#toc6" tabindex="0">for と id は、label と input を結び付けるために使う</a></li><li><a href="#toc7" tabindex="0">実務では、会員登録フォームやチェックボックスで特に効く</a><ol><li><a href="#toc8" tabindex="0">会員登録フォームや問い合わせフォーム</a></li><li><a href="#toc9" tabindex="0">チェックボックスやラジオボタン</a></li></ol></li><li><a href="#toc10" tabindex="0">placeholderとの違いを分けて考えると混乱しにくい</a></li><li><a href="#toc11" tabindex="0">よくあるミスと注意点</a></li><li><a href="#toc12" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">まず見てください：labelなしとlabelありではフォームの伝わり方が変わる</span></h2>



<p class="wp-block-paragraph">下の画像は、左が label を使わずに入力欄だけを置いた例、右が label を使って項目名を明示した例です。どちらもフォームとしては表示されますが、ユーザーが受け取る情報量には差があります。</p>



<figure class="wp-block-image size-large"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2026/04/html-label-visual.png" alt="labelなしのフォームとlabelありのフォームを比較した説明画像"/></figure>



<p class="wp-block-paragraph">この画像で見てほしいのは、単に「右のほうがきれい」という話ではないことです。左側のフォームは入力欄自体は表示されていますが、項目名が画面に残りにくく、何を入力する欄なのかが伝わりにくくなっています。一方で右側のフォームは、メールアドレスやパスワードといった<strong>項目の意味が画面上にはっきり残る</strong>ので、初めて見た人でも迷いにくくなります。</p>



<ul class="wp-block-list">
<li>左: 入力欄はあるが、項目名を placeholder に頼っていて意味が弱い</li>
<li>右: label があるので、何の欄かが見た瞬間に分かる</li>
<li>チェックボックスも、説明文が近くにあることで操作しやすく見える</li>
</ul>



<p class="wp-block-paragraph">つまり labelタグは、フォームの見た目を飾るためのタグではなく、<strong>フォームに意味を与えて、迷わず使える画面に近づけるためのタグ</strong>です。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img wpfc-lazyload-disable="true" decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>labelタグは「フォームに説明書きを付けるタグ」と考えると、最初は理解しやすいです。</p>
</div></div>



<h2 class="wp-block-heading"><span id="toc2">結論：labelタグはフォーム部品に「この欄の意味」を与えるタグ</span></h2>



<p class="wp-block-paragraph">結論からいうと、<strong><span class="marker-under">labelタグとは、入力欄やチェックボックスなどのフォーム部品に対して「これは何を入力・選択する場所か」を伝えるためのタグ</span></strong>です。表示用の文字を置くだけでなく、フォームの理解しやすさ、クリックしやすさ、アクセシビリティにも関わります。</p>



<ul class="wp-block-list">
<li>入力欄やチェックボックスに項目名を与えられる</li>
<li>label の文字をクリックしたときにも対象を操作しやすくできる</li>
<li>スクリーンリーダーなどにも項目の意味を伝えやすくなる</li>
</ul>



<p class="wp-block-paragraph">特に会員登録フォーム、問い合わせフォーム、アンケート画面のように、項目が複数並ぶ場面では labelタグの有無がそのまま使いやすさの差になります。</p>



<h2 class="wp-block-heading"><span id="toc3">なぜ入力欄だけでは足りないのか</span></h2>



<p class="wp-block-paragraph">ここで一度、なぜ labelタグが必要になるのかを前提から整理します。ブラウザは <code>input</code> タグを書けば入力欄を表示してくれますが、その入力欄が「氏名」なのか「メールアドレス」なのか「自由記述」なのかまでは、箱だけ見ても分かりません。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;input type="text" name="email"&gt;</pre>



<p class="wp-block-paragraph">このコードでも入力欄は表示されます。ですが、問い合わせフォームや会員登録画面でこれだけが置かれていたら、ほとんどの人は「これは何を入れる欄だろう」と迷います。つまりフォームでは、入力欄を作ることよりも先に、<strong>その欄の役割を相手に伝えること</strong>が大切です。</p>



<p class="wp-block-paragraph">さらに初心者の方がやりがちなのが、項目名を placeholder だけで済ませてしまう書き方です。ただ、placeholder は入力が始まると薄くなったり消えたりするので、項目名そのものを支える役割には向きません。だからこそ、項目名をきちんと残す labelタグが必要になります。</p>



<h2 class="wp-block-heading"><span id="toc4">表示結果とコードを対応させて見ると、labelの役割が分かりやすい</span></h2>



<p class="wp-block-paragraph">次に、先ほどの「labelあり」のフォームが、どんなコードでできているのかを見てみましょう。ここでは、メールアドレス欄、パスワード欄、チェックボックスという初心者にも身近な例に絞ります。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;label for="user-email"&gt;メールアドレス&lt;/label&gt;
&lt;input type="email" id="user-email" name="user-email" placeholder="sample@example.com"&gt;

&lt;label for="user-password"&gt;パスワード&lt;/label&gt;
&lt;input type="password" id="user-password" name="user-password"&gt;

&lt;label for="agree"&gt;利用規約に同意する&lt;/label&gt;
&lt;input type="checkbox" id="agree" name="agree"&gt;</pre>



<p class="wp-block-paragraph">このコードで大切なのは、見える文字と、フォーム部品そのものが分かれている点です。メールアドレスやパスワードという文字は <code>label</code> で表し、実際に入力を受け取る箱は <code>input</code> で表しています。つまり HTML の中で、「説明する役割」と「入力してもらう役割」がきちんと分かれているわけです。</p>



<figure class="wp-block-table is-style-regular"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>コード</th><th>画面で起きること</th></tr></thead><tbody><tr><td><code>&lt;label&gt;メールアドレス&lt;/label&gt;</code></td><td>入力欄の項目名として「何の欄か」が先に見える</td></tr><tr><td><code>placeholder="sample@example.com"</code></td><td>どのような形式で入力するかの補足ヒントになる</td></tr><tr><td><code>&lt;label&gt;利用規約に同意する&lt;/label&gt;</code></td><td>チェックボックスの意味が見えやすくなり、操作の迷いが減る</td></tr></tbody></table></div></figure>



<p class="wp-block-paragraph">このように、コードを表示結果に対応させて見ると、labelタグは「文字を追加している」のではなく、<strong>フォームの意味を見える形で残している</strong>のだと分かります。</p>



<h2 class="wp-block-heading"><span id="toc5">labelタグとは何か</span></h2>



<p class="wp-block-paragraph"><code>label</code> タグは、フォーム部品に対するキャプション、つまり説明文や項目名を表すタグです。対象になるのは、テキストボックス、チェックボックス、ラジオボタン、プルダウン、テキストエリアなどのフォーム要素です。</p>



<p class="wp-block-paragraph">たとえば「お名前」「メールアドレス」「利用規約に同意する」といった文言は、見た目の文字として置くだけでも人間は何となく理解できます。ですが HTML として正しく関連付けておかないと、ブラウザや支援技術から見ると、単に近くに置かれた文字でしかありません。labelタグは、<strong>その説明文をフォーム部品と正式に結び付ける役割</strong>を持っています。</p>



<p class="wp-block-paragraph">MDN でも、label と input を関連付けることで、スクリーンリーダーがラベルを読み上げやすくなり、さらにラベルをクリックして入力欄をアクティブにできる点が利点として説明されています。つまり labelタグは、見た目の補助ではなく、フォームを正しく使ってもらうための土台です。</p>



<h2 class="wp-block-heading"><span id="toc6">for と id は、label と input を結び付けるために使う</span></h2>



<p class="wp-block-paragraph">ここまでで「label が項目名を表す」ことは見えてきたと思います。次に知っておきたいのが、label と input が HTML の中でどう結び付くかです。初心者の方が最初に覚えるなら、<code>for</code> 属性と <code>id</code> 属性を対応させる書き方がいちばん分かりやすいです。</p>



<figure class="wp-block-image size-large"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2026/04/html-label-inline.png" alt="labelタグとinputタグの関連付けを示す図"/></figure>



<p class="wp-block-paragraph">図の左が <code>label for="email"</code>、中央が <code>input id="email"</code> です。この2つの値が一致すると、「この label はこの input を説明している」という関係が HTML 上で成立します。その結果として、ラベル文字をクリックしたときに入力欄へ移動しやすくなったり、読み上げ時に意味が伝わりやすくなったりします。</p>



<ul class="wp-block-list">
<li><code>for</code>: どの入力欄を説明するのかを label 側で指定する</li>
<li><code>id</code>: 入力欄の識別子を input 側で持つ</li>
<li>両方の値が一致すると、label と input が関連付く</li>
</ul>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;label for="email"&gt;メールアドレス&lt;/label&gt;
&lt;input type="email" id="email" name="email"&gt;</pre>



<p class="wp-block-paragraph">この書き方なら、コードを後から読み返したときも関係が追いやすいです。input を label の中に入れる書き方もありますが、初心者のうちはまず <strong>for と id を使う基本形</strong>から覚えるほうが混乱しにくいです。</p>



<h2 class="wp-block-heading"><span id="toc7">実務では、会員登録フォームやチェックボックスで特に効く</span></h2>



<p class="wp-block-paragraph">labelタグは勉強用サンプルよりも、実際の画面でこそ価値がはっきり出ます。ここでは初心者の方がイメージしやすいように、よくある実務場面に結び付けて見てみます。</p>



<h3 class="wp-block-heading"><span id="toc8">会員登録フォームや問い合わせフォーム</span></h3>



<p class="wp-block-paragraph">会員登録フォームでは、氏名、メールアドレス、パスワードのように似た入力欄が縦に並びます。ここで label がないと、どの欄に何を入れるのかが一目で分からず、入力ミスが起きやすくなります。問い合わせフォームでも、「件名」「本文」「返信先メールアドレス」といった項目は、項目名が残っているからこそ迷わず書き進められます。</p>



<p class="wp-block-paragraph">とくに入力項目が3つ、4つと増えてくると、label は「あると丁寧」ではなく「ないと不親切」な要素になっていきます。</p>



<h3 class="wp-block-heading"><span id="toc9">チェックボックスやラジオボタン</span></h3>



<p class="wp-block-paragraph">チェックボックスやラジオボタンでは、labelタグのありがたみがさらに分かりやすいです。小さな四角や丸だけを正確に押すのは意外と大変ですが、label で関連付けておくと、説明文が近くにあることで何の選択肢か分かりやすくなり、操作のストレスも減ります。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;label for="agree"&gt;利用規約に同意する&lt;/label&gt;
&lt;input type="checkbox" id="agree" name="agree"&gt;</pre>



<p class="wp-block-paragraph">利用規約への同意、メール配信の希望、性別の選択肢など、実務のフォームでよく出てくる部品ほど label の効果が見えやすいです。つまり実務では、labelタグは「正しいHTMLを書くためのお作法」ではなく、<strong>入力ミスや操作ストレスを減らすための実用品</strong>として使われています。</p>



<h2 class="wp-block-heading"><span id="toc10">placeholderとの違いを分けて考えると混乱しにくい</span></h2>



<p class="wp-block-paragraph">初心者の方がよく混乱するのが、「placeholder があるなら label はいらないのでは？」という点です。ここは役割をきちんと分けると理解しやすくなります。</p>



<figure class="wp-block-table is-style-regular"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>要素</th><th>主な役割</th></tr></thead><tbody><tr><td><code>label</code></td><td>この欄が何の項目かを伝える</td></tr><tr><td><code>placeholder</code></td><td>どんな形式で入力するかのヒントを補足する</td></tr></tbody></table></div></figure>



<p class="wp-block-paragraph">placeholder は便利ですが、入力が始まると消えたり薄く見えたりするため、項目名そのものを担う役割には向きません。MDN でも、placeholder を label の代わりとして使ってはいけないと説明されています。だから覚え方としては、<strong>label は必須の説明、placeholder は任意の補足</strong>で十分です。</p>



<p class="wp-block-paragraph">たとえば「メールアドレス」という label の下に、placeholder として <code>sample@example.com</code> を入れるのは自然です。逆に label を消して placeholder だけにすると、入力中に「この欄は何だっけ？」となりやすくなります。</p>



<h2 class="wp-block-heading"><span id="toc11">よくあるミスと注意点</span></h2>



<ul class="wp-block-list">
<li><code>for</code> の値と <code>id</code> の値が一致していない</li>
<li>入力欄の近くに文字を書いただけで、labelタグを使っていない</li>
<li>複数の入力欄で同じ <code>id</code> を使ってしまう</li>
<li><code>placeholder</code> を label の代わりにしてしまう</li>
<li>label の中に余計なリンクやボタンを入れて、どこが何を説明しているのか曖昧になる</li>
</ul>



<p class="wp-block-paragraph">特に見落としやすいのが、入力欄の近くに文字を書いただけで満足してしまうケースです。人間の目では近くにある文字を見て何となく理解できますが、HTML としては「説明文がたまたま近くにある」だけで、正式な関連付けがありません。初心者のうちは、<strong>見た目で判断するより、label と input をセットで書く</strong>癖を付けておくのがおすすめです。</p>



<p class="wp-block-paragraph">フォーム全体の役割を先に整理したい方は、<a href="https://it-biz.online/web-design/form/">formタグとは？</a> や、HTMLの基本構造を見直したい方向けの <a href="https://it-biz.online/web-design/html-rule/">HTMLの書き方の基本</a> も一緒に読むと、labelタグの位置づけがさらに分かりやすくなります。</p>



<h2 class="wp-block-heading"><span id="toc12">まとめ</span></h2>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box memo-box">
<p class="has-text-align-center"><span class="badge-green">まとめ</span> <strong>labelタグの基本</strong></p>
<ul class="wp-block-list">
<li>labelタグはフォーム部品に項目名や説明を与えるためのタグ</li>
<li>入力欄だけでは意味が伝わらないため、label で役割を見える形にする</li>
<li><code>for</code> と <code>id</code> を対応させる書き方が基本</li>
<li><code>placeholder</code> は label の代わりではなく、入力形式の補足に使う</li>
<li>会員登録フォームやチェックボックスのような実務画面で特に効果が大きい</li>
</ul>
</div>



<p class="wp-block-paragraph">labelタグは派手ではありませんが、フォームを「表示できるだけのもの」から「前提知識がない人でも迷わず使えるもの」に近づける重要なタグです。まずは <code>for</code> と <code>id</code> を使った基本形から練習して、入力欄のそばに文字を置くだけで終わらせず、<strong>入力欄と説明をきちんと結び付ける</strong>意識で書いてみてください。</p>

]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>【HTML】sectionタグとは？div・article・mainとの違いを初心者向けにわかりやすく解説</title>
		<link>https://it-biz.online/web-design/html-section/</link>
		
		<dc:creator><![CDATA[bizonline_admin]]></dc:creator>
		<pubDate>Fri, 24 Apr 2026 11:16:12 +0000</pubDate>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[WEBデザイン]]></category>
		<category><![CDATA[Web開発]]></category>
		<category><![CDATA[プログラミング]]></category>
		<guid isPermaLink="false">https://it-biz.online/?p=10540</guid>

					<description><![CDATA[HTMLのsectionタグとは何かを、サービス紹介ページの例を見ながら初心者向けに解説します。div・article・mainとの違い、使いどころ、見出しとの関係まで前提からわかりやすく整理します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph"><code>section</code> タグを学び始めると、初心者の方はかなり高い確率で「<code>div</code> と何が違うの？」「見た目が同じなら使わなくてもよいのでは？」と迷います。これは自然な反応です。</p>



<p class="wp-block-paragraph">なぜなら、sectionタグは <strong>label のように画面上の見え方が大きく変わるタグではない</strong> からです。</p>



<p class="wp-block-paragraph">そこで今回は、定義から入るのではなく、まず「1ページの中で section をどこに使うのか」を実例で見てから意味を整理します。sectionタグは、見た目を装飾するためのタグではなく、ページの中にある話題の区切りを表すためのタグです。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-13" checked><label class="toc-title" for="toc-checkbox-13">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">まず見てください：section は 1 ページの中の話題ごとに使う</a></li><li><a href="#toc2" tabindex="0">結論：sectionタグは 1 ページ内の話題のまとまりを表すタグ</a></li><li><a href="#toc3" tabindex="0">前提：section は見た目を変えるタグではないので、初心者は迷いやすい</a></li><li><a href="#toc4" tabindex="0">基本の書き方は、見出し付きのまとまりを section で囲む形</a></li><li><a href="#toc5" tabindex="0">div・article・main との違いをページの役割で整理すると分かりやすい</a></li><li><a href="#toc6" tabindex="0">section を使うと自然な場面</a></li><li><a href="#toc7" tabindex="0">よくあるミスと迷いどころ</a></li><li><a href="#toc8" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">まず見てください：section は 1 ページの中の話題ごとに使う</span></h2>



<p class="wp-block-paragraph">下の画像は、サービス紹介ページをイメージした例です。ページ全体の主内容があり、その中に「特徴」「料金プラン」「よくある質問」といった話題のまとまりが並んでいます。このような <strong>同じページの中で話題が切り替わる単位</strong> を section と考えると、かなり分かりやすくなります。</p>



<figure class="wp-block-image size-large"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2026/04/html-section-visual.png" alt="sectionタグをサービス紹介ページの構成で示した説明画像"/></figure>



<p class="wp-block-paragraph">この画像で見てほしいのは、section が「見た目の箱」ではなく「話題の単位」を表している点です。ページ全体は <code>main</code> のイメージで、その中に「特徴」「料金プラン」「FAQ」など、1つのテーマとして読めるまとまりが入っています。section は、このまとまりごとに「ここからここまでが同じ話題です」と示すために使います。</p>



<ul class="wp-block-list">
<li>ページ全体の主内容は <code>main</code> で考える</li>



<li>その中にある話題ごとの区切りが <code>section</code></li>



<li>各 section には見出しがあると、何のまとまりかが一目で伝わる</li>
</ul>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img wpfc-lazyload-disable="true" decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p>section は「ただ囲むタグ」ではなく、「このページの中で話題がここで切り替わります」と示すタグです。</p>
</div></div>



<h2 class="wp-block-heading"><span id="toc2">結論：sectionタグは 1 ページ内の話題のまとまりを表すタグ</span></h2>



<p class="wp-block-paragraph">結論からいうと、<strong><span class="marker-under">sectionタグとは、文書やページの中にある「意味のある話題のまとまり」を表すためのタグ</span></strong>です。特徴、料金、よくある質問、概要、手順、注意点のように、1つのテーマとして読める単位を分けたいときに向いています。</p>



<figure class="wp-block-table aligncenter is-style-regular"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>観点</th><th>sectionタグの考え方</th></tr></thead><tbody><tr><td>役割</td><td>ページの中の話題ごとのまとまりを示す</td></tr><tr><td>相性がよいもの</td><td>見出し、説明文、箇条書き、カード群など</td></tr><tr><td>向いている場面</td><td>サービス紹介ページ、記事本文、会社紹介ページ、FAQ構成など</td></tr></tbody></table></div></figure>



<p class="wp-block-paragraph">つまり、sectionタグは「見た目を整えるための箱」ではなく、<strong>ページの内容を章や節のように分けるためのタグ</strong>です。</p>



<h2 class="wp-block-heading"><span id="toc3">前提：section は見た目を変えるタグではないので、初心者は迷いやすい</span></h2>



<p class="wp-block-paragraph">sectionタグが分かりにくい理由は、使ってもブラウザ上の見た目が劇的に変わるわけではないからです。<code>&lt;div&gt;</code> で囲んでも、<code>&lt;section&gt;</code> で囲んでも、CSS を当てなければ表示結果はかなり似ています。</p>



<p class="wp-block-paragraph">だから初心者のうちは、「見た目が同じなら div でよいのでは？」と感じやすいです。ただし HTML では、見た目だけでなく <strong>その部分が何を表しているか</strong> も大切です。MDN でも、section は一般的なセクションを表す要素で、スタイル用ラッパーに過ぎないなら div を使うべきだと説明されています。</p>



<p class="wp-block-paragraph">つまり section を理解するコツは、「見た目で違いを探すこと」ではなく、「この部分は同じ話題として読めるまとまりか」を考えることです。</p>



<h2 class="wp-block-heading"><span id="toc4">基本の書き方は、見出し付きのまとまりを section で囲む形</span></h2>



<p class="wp-block-paragraph">もっとも基本的で分かりやすい書き方は、見出しと本文を1つのまとまりとして section で囲む方法です。サービス紹介ページや記事本文の一部をイメージすると自然に理解できます。</p>



<pre class="EnlighterJSRAW" data-enlighter-language="html">&lt;main&gt;
  &lt;section&gt;
    &lt;h2&gt;特徴&lt;/h2&gt;
    &lt;p&gt;このサービスの特徴を紹介します。&lt;/p&gt;
  &lt;/section&gt;

  &lt;section&gt;
    &lt;h2&gt;料金プラン&lt;/h2&gt;
    &lt;p&gt;月額料金や無料プランを説明します。&lt;/p&gt;
  &lt;/section&gt;

  &lt;section&gt;
    &lt;h2&gt;よくある質問&lt;/h2&gt;
    &lt;p&gt;導入前によくある質問をまとめます。&lt;/p&gt;
  &lt;/section&gt;
&lt;/main&gt;</pre>



<p class="wp-block-paragraph">この例では、ページ全体の主内容が <code>main</code> で、その中に3つの話題のまとまりがあります。各まとまりは、それぞれ独立した話題として読めるので section を使うのが自然です。見出しが入っているので、「このまとまりは何について書いているか」もすぐ分かります。</p>



<p class="wp-block-paragraph">MDN でも、section には少数の例外を除いて見出しを置くよう案内されています。初心者のうちは、<strong>section を使うなら見出しもセットで考える</strong>と覚えておくと失敗しにくいです。</p>



<h2 class="wp-block-heading"><span id="toc5">div・article・main との違いをページの役割で整理すると分かりやすい</span></h2>



<p class="wp-block-paragraph">sectionタグが難しく感じる最大の理由は、似たタグが近くにあるからです。ここは「見た目」ではなく「役割」で分けると整理しやすくなります。</p>



<figure class="wp-block-table aligncenter is-style-regular"><div class="scrollable-table stfc-sticky"><table><thead><tr><th>タグ</th><th>向いている役割</th><th>初心者向けの覚え方</th></tr></thead><tbody><tr><td><code>main</code></td><td>ページ全体の主内容</td><td>1ページの中心になる中身全体</td></tr><tr><td><code>section</code></td><td>ページ内の話題ごとのまとまり</td><td>特徴、料金、概要、FAQ のような区切り</td></tr><tr><td><code>article</code></td><td>それ単体で完結する内容</td><td>ブログ記事1本、ニュース1件、投稿カード1件</td></tr><tr><td><code>div</code></td><td>意味を持たないグループ化やレイアウト</td><td>見た目や配置のための箱</td></tr></tbody></table></div></figure>



<p class="wp-block-paragraph">たとえばブログ記事ページなら、記事本文全体が <code>main</code> の中にあり、その中に「概要」「手順」「注意点」といった section が入るイメージです。逆に、ブログ記事1本そのものを表したいなら article が向いています。横並びのレイアウトや装飾のために囲むだけなら div のほうが自然です。</p>



<p class="wp-block-paragraph">迷ったときは、次のように考えるとかなり整理しやすいです。<strong>1ページの中の話題なら section、単体で完結する記事なら article、見た目のためだけなら div</strong> です。</p>



<h2 class="wp-block-heading"><span id="toc6">section を使うと自然な場面</span></h2>



<p class="wp-block-paragraph">sectionタグは抽象的に見えますが、実際にはかなり身近な場面で使いやすいタグです。特に次のようなページでは、section の考え方がそのまま活きます。</p>



<ul class="wp-block-list">
<li>サービス紹介ページの「特徴」「料金」「導入事例」「よくある質問」</li>



<li>会社紹介ページの「事業内容」「実績」「採用情報」「お問い合わせ案内」</li>



<li>ブログ記事の「概要」「手順」「注意点」「まとめ」</li>



<li>ドキュメントページの「前提」「設定方法」「確認方法」</li>
</ul>



<p class="wp-block-paragraph">共通しているのは、どれも「1ページの中に複数の話題がある」ことです。section は、こうしたページを意味のある単位に分けて考えるときにとても役立ちます。</p>



<p class="wp-block-paragraph">逆に、単なるカードの横並びや余白調整のために囲むだけなら、section より div のほうが自然です。意味ではなくレイアウトが目的だからです。</p>



<h2 class="wp-block-heading"><span id="toc7">よくあるミスと迷いどころ</span></h2>



<ul class="wp-block-list">
<li>見た目の囲みとしてだけ section を使っている</li>



<li>何の話題か説明できないブロックまで section にしている</li>



<li>独立した記事なのに section だけで済ませている</li>



<li>見出しのない section を大量に並べて、まとまりの意味が見えにくくなっている</li>
</ul>



<p class="wp-block-paragraph">一番大切なのは、「この部分は何のまとまりですか？」と聞かれたときに答えられることです。答えられるなら section の可能性がありますし、答えられないなら div のほうが自然なことが多いです。</p>



<p class="wp-block-paragraph">また、MDN では section よりも具体的な意味を持つ要素があるなら、そちらを優先すると説明されています。たとえばページの主内容なら <code>main</code>、独立した記事なら <code>article</code>、ナビゲーションなら <code>nav</code> です。section は便利ですが、何でも section にすればよいわけではありません。</p>



<h2 class="wp-block-heading"><span id="toc8">まとめ</span></h2>



<div class="wp-block-cocoon-blocks-icon-box common-icon-box block-box memo-box">
<p class="has-text-align-center"><span class="badge-green">まとめ</span> <strong>sectionタグの基本</strong></p>
<ul class="wp-block-list">
<li>sectionタグは 1 ページ内の話題ごとのまとまりを表すために使う</li>
<li>見た目を変えるためのタグではなく、内容の区切りを示すタグである</li>
<li>見出し付きのまとまりとして使うと理解しやすい</li>
<li>独立した内容なら article、レイアウト用なら div、ページ全体の主内容なら main を考える</li>
<li>「この部分は何の話題か」を説明できるかが section を使う判断基準になる</li>
</ul>
</div>



<p class="wp-block-paragraph">sectionタグは派手なタグではありませんが、セマンティックHTMLを理解するうえでとても大事です。まずは「1ページの中で話題が変わる場所を区切るタグ」と覚え、サービス紹介ページや記事本文の構成を section の視点で見てみると、使いどころがかなり掴みやすくなります。</p>



<div class="wp-block-cocoon-blocks-balloon-ex-box-1 speech-wrap sb-id-1 sbs-stn sbp-l sbis-cb cf block-box not-nested-style cocoon-block-balloon"><div class="speech-person"><figure class="speech-icon"><img decoding="async" src="https://it-biz.online/wp-content/uploads/2023/06/man.png" alt="" class="speech-icon-image"/></figure><div class="speech-name"></div></div><div class="speech-balloon">
<p class="wp-block-paragraph">関連する考え方も一緒に整理したい方は、<a href="https://it-biz.online/web-design/semantic-html/">セマンティックHTMLとは？</a>、<a href="https://it-biz.online/web-design/div/">divタグの使い方</a>、<a href="https://it-biz.online/web-design/main/">mainタグの意味と使い方</a> も続けて読むと、役割の違いがさらに見えやすくなります。</p>
</div></div>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
