@frswataru (本石 渉)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

HTML CSS tableの罫線デザイン

解決したいこと

HTMLのtabelに罫線をつけてみたいです
tabele設計、罫線を付けるための基本の考え、応用としてデザインの付け方をご教授願います

イメージ

image.png

html_table

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>table</title>
</head>

<body>
    <table>
        <tr>
            <td>学年</td>
            <td></td>
            <td>性別</td>
            <td>名前</td>
        </tr>
        <tr>
            <td rowspan="9">1</td>
            <td rowspan="3">1</td>
            <td rowspan="2"></td>
            <td>飯田</td>
        </tr>
        <tr>
            <td>勝田</td>
        </tr>
        <tr>
            <td></td>
            <td>立川</td>
        </tr>
        <tr>
            <td rowspan="3">2</td>
            <td></td>
            <td>織戸</td>
        </tr>
        <tr>
            <td rowspan="2"></td>
            <td>黒沢</td>
        </tr>
        <tr>
            <td>谷口</td>
        </tr>
        <tr>
            <td rowspan="3">3</td>
            <td rowspan="2"></td>
            <td>伊藤</td>
        </tr>
        <tr>
            <td>大野</td>
        </tr>
        <tr>
            <td></td>
            <td>土屋</td>
        </tr>
    </table>

</body>

</html>
0 likes

3Answer

テーブルはセルの集合体なので枠線を引く際に
四角で考えるか、縦線と横線で分けて考えるかという意味になります

↓四角と縦横で考えるイメージ図↓
スクリーンショット 2021-02-19 142934.png

「 」上辺+左辺右辺+下辺をセットで捉える考え方です。

で考えるイメージ図↓
スクリーンショット 2021-02-19 143754.png

四角で捉えると隣接するセルの枠線と被る為、描写しにくくなります。

縦横で捉えるとセルがつなぎ合わせてあるときに結構困ります。
※「何行目の枠線の下側をひく」「何列目の枠線の右側をひく」のような指定がしづらい。

「 」←この形で捉えると枠線を引く際に2本になるところが出ないため、
CSSでデザインする際にborder-top,left,right,bottomを別々に設定できて便利です。

こういった理由で「 」の形でテーブルを捉えて枠線を引くのがおススメです。

2Like

Comments

結論 「」で見るのがいい、デザイン例は検索しましょう

│─で見る方法もありますが、複数のセルをつなぐテーブルだと組み方が難しくなります。

以下コードの例です。

(略)
</head>

<style>
  table {
    border-collapse: collapse;
    border-spacing: 0;
    border: 2px solid black;
  }
  th {
    background: greenyellow;
    color: white;
  }
  th, td {
    width: 80px;
    border-top: 1px solid black;
    border-left: 1px solid black;
    padding: 5px;
    text-align: center;
  }
  td.double {
    border-top: 3px double black;
  }
  td.dotted {
    border-top: 1px dotted black;
  }
</style>

<body>
    <table>
        <tr>
            <th>学年</th>
            <th>組</th>
            <th>性別</th>
            <th>名前</th>
        </tr>
        <tr>
            <td class="double" rowspan="9">1</td>
            <td class="double" rowspan="3">1</td>
            <td class="double" rowspan="2">男</td>
            <td class="double">飯田</td>
        </tr>
        <tr>
            <td class="dotted">勝田</td>
        </tr>
        <tr>
            <td class="dotted">女</td>
            <td class="dotted">立川</td>
        </tr>
(略)

いちばん上の行の<td><th>に変更しています。
二重線やドットの箇所はCSSを当てにくいためclassを付けました。

ブラウザではこう見えます
スクリーンショット 2021-02-19 114640.png

なお、デザインはHTML テーブルデザインで探してみるのがおススメです。

0Like

・結論 「」で見る

・□や│─で見る方法とは具体的にはどういったことでしょうか???

0Like

Your answer might help someone💌