気ままに趣味旅行

面白いコト「拡がる/拡げる」

実践で学ぶHTML/CSS -WEBページに表(table)を追加する2

どうもhiroakiです。

 

今回はWEBページに表(table)を追加する方法を紹介します。ここではHTML言語を使用します。

前回tableの基本的な作り方と考え方をお伝えしたので、その続きを書きます。

hiroakies.hatenablog.com

▼こちらで全てのレッスンを確認できます。

hiroakies.hatenablog.com

 

補足説明

①まずは表の枠組みを作っていきましょう。下記のコードをコピペしましょう。

  1. <table>
  2.   <caption>気ままに趣味旅行(表のキャプション部分)</caption>
  3.   <thead>
  4.     <tr>
  5.       <th>カテゴリ一蘭</th>
  6.       <th>内容</th>
  7.       <th>著者</th>
  8.       <td>ヘッダ部分</td>
  9.     </tr>
  10.   </thead>
  11.   <tbody>
  12.     <tr>
  13.       <th>HTML/CSS</th>
  14.       <td>HTML/CSSの基礎・応用について学びます</td>
  15.       <td rowspan="5">hiroaki(縦に5つ連結)他のtr部分で、連結に対応する4つ分のtdが抜けていますね。</td>
  16.       <td rowspan="5">ボディ部分</td>
  17.     </tr>
  18.     <tr>
  19.       <th>Python</th>
  20.       <td>Pythonの基礎・応用について学びます</td>
  21.     </tr>
  22.     <tr>
  23.       <th>読書</th>
  24.       <td>これまでに読んだ本について学んだこと等</td>
  25.     </tr>
  26.     <tr>
  27.       <th>映画(映像)</th>
  28.       <td>面白い映画や映像を紹介。感想みたいなものです</td>
  29.     </tr>
  30.     <tr>
  31.       <th>カフェ・レストラン</th>
  32.       <td>カフェ・レストランについてのレビューです</td>
  33.     </tr>
  34.   </tbody>
  35.   <tfoot>
  36.     <tr>
  37.       <th>その他</th>
  38.       <td colspan="2">雑記とかもあります(横に2つ連結)tr内にtdがひとつ足りないのが確認できますね。</td>
  39.       <td>フッタ部分</td>
  40.     </tr>
  41.   </tfoot>
  42. </table>

どうでしょうか。前回からの補足部分は赤字で示しています。colspanとrowspan属性を指定すると連結できます。見てもらうと分かりますが、連結した行列部分に対応する要素が<tr>要素の中にありません。

気ままに趣味旅行(表のキャプション部分)
カテゴリ一蘭 内容 著者 ヘッダ部分
HTML/CSS HTML/CSSの基礎・応用について学びます hiroaki(縦に5つ連結)他のtr部分で、連結に対応する4つ分のtdが抜けていますね。 ボディ部分
Python Pythonの基礎・応用について学びます
読書 これまでに読んだ本について学んだこと等
映画(映像) 面白い映画や映像を紹介。感想みたいなものです
カフェ・レストラン カフェ・レストランについてのレビューです
その他 雑記とかもあります(横に2つ連結)tr内にtdがひとつ足りないのが確認できますね。 フッタ部分

できましたか。たぶん、おおよそ分かってもらえたと思います。しかしこのままでは、ちょっと味気ないですね。

 

②次にレイアウトを整えます。これから、前回使わなかったCSSを使っていきますが、分からない人がいれば、こちらにまとめておりますので、少しさらっておいてください。HTML/CSSの基礎1 - 気ままに趣味旅行

テーブル(HTML):

  1. <table class="table-practice">
  2.   <caption>気ままに趣味旅行(表のキャプション部分)</caption>
  3.   <thead>
  4.     <tr>
  5.       <th>カテゴリ一蘭</th>
  6.       <th>内容</th>
  7.       <th>著者</th>
  8.       <td>ヘッダ部分</td>
  9.     </tr>
  10.   </thead>
  11.   <tbody>
  12.     <tr>
  13.       <th>HTML/CSS</th>
  14.       <td>HTML/CSSの基礎・応用について学びます</td>
  15.       <td rowspan="5"class="table-practice-rowspan1">hiroaki(縦に5つ連結)他のtr部分で、連結に対応する4つ分のtdが抜けていますね。</td>
  16.       <td rowspan="5">ボディ部分</td>
  17.     </tr>
  18.     <tr>
  19.       <th>Python</th>
  20.       <td>Pythonの基礎・応用について学びます</td>
  21.     </tr>
  22.     <tr>
  23.       <th>読書</th>
  24.       <td>これまでに読んだ本について学んだこと等</td>
  25.     </tr>
  26.     <tr>
  27.       <th>映画(映像)</th>
  28.       <td>面白い映画や映像を紹介。感想みたいなものです</td>
  29.     </tr>
  30.     <tr>
  31.       <th>カフェ・レストラン</th>
  32.       <td>カフェ・レストランについてのレビューです</td>
  33.     </tr>
  34.   </tbody>
  35.   <tfoot>
  36.     <tr>
  37.       <th>その他</th>
  38.       <td colspan="2">雑記とかもあります(横に2つ連結)tr内にtdがひとつ足りないのが確認できますね。</td>
  39.       <td>フッタ部分</td>
  40.     </tr>
  41.   </tfoot>
  42. </table>

CSS:

  1. .table-practice{font-size:20px;
  2.     text-align:center;}
  3. .table-practice th{background: black;
  4.     color: white;
  5.     padding:10px;
  6.     width:150px;}
  7. .table-practice td {padding:5px;
  8.     background: #838389;
  9.     color:white;}
  10. .table-practice-rowspan1{width:70px;}

見出し(th)以外は初期設定が左寄せとなっています。text-alignプロパティでcenterに指定します。

気ままに趣味旅行(表のキャプション部分)
カテゴリ一蘭 内容 著者 ヘッダ部分
HTML/CSS HTML/CSSの基礎・応用について学びます hiroaki(縦に5つ連結)他のtr部分で、連結に対応する4つ分のtdが抜けていますね。 ボディ部分
Python Pythonの基礎・応用について学びます
読書 これまでに読んだ本について学んだこと等
映画(映像) 面白い映画や映像を紹介。感想みたいなものです
カフェ・レストラン カフェ・レストランについてのレビューです
その他 雑記とかもあります(横に2つ連結)tr内にtdがひとつ足りないのが確認できますね。 フッタ部分

コードをそのまま試しているで「んんん?なんで、表のth要素のbackground-colorが黒くならないの???」と思った方。HTMLのclass="table-practice"をid="table-practice"に変え、CSSの.table-practiceを#table-practiceに変えてみてください。例のように変わると思います。

 

 ③こういう表も作れます。

  1. <table> 
  2.     <tr><td rowspan="2">a</td><td colspan="2">b</td></tr>  
  3.     <tr><td>c</td><td rowspan="2">d</td></tr> 
  4.     <tr><td colspan="2">e</td></tr> 
  5. </table>

色々な表を作れると、表現が広がりますね。

a b
c d
e

 

では今回はこの辺で!