0

HTML5とCSSで表を作っています。スクロール バーを追加しようとすると、表のヘッダーと本文の間に大きな隙間ができます。これが私のコードです:

http://jsfiddle.net/AaronJohnson/u23g9/

HTML5 コード:

<table id="mytable">
    <tr>
        <th> <span>
            Playlist
            </span>

        </th>
    </tr>
    <tbody>
        <tr>
            <td> <span>
            LINK 1
            </span>

            </td>
        </tr>
        <tr>
            <td> <span>
            LINK 2
            </span>

            </td>
        </tr>
        <tr>
            <td> <span>
            LINK 3
            </span>

            </td>
        </tr>
        <tr>
            <td> <span>
            LINK 4
            </span>

            </td>
        </tr>
        <tr>
            <td> <span>
            LINK 5
            </span>

            </td>
        </tr>
        <tr>
            <td> <span>
            LINK 6
            </span>

            </td>
        </tr>
        <tr>
            <td> <span>
            LINK 7
            </span>

            </td>
        </tr>
    </tbody>
</table>

CSS コード:

table#mytable {
    width:100%;
    border-collapse:separate;
    background:crimson;
    border-radius: 15px;
}
tbody {
    overflow: auto;
    height: 100px;
    float: left;
    width: 100%;
}
td {
    text-align:center;
    background:gray;
    border-bottom:5px solid black;
    border-radius: 15px;
}
th {
    font-weight:bold;
    text-align:center;
    background:crimson;
    border-bottom:5px solid black;
    border-top-left-radius: 15px;
    border-top-right-radius: 15px;
    float: left;
    width: 100%;
}
tr {
    width: 100%;
    display: table;
}
4

1 に答える 1

1

tbodyギャップは、ヘッダー行が100 ピクセルの固定高さを持つ別の要素として扱われているためです。

で包むとthead隙間がなくなります。

<table id="mytable">
    <thead>
        <tr>
            <th><span>Playlist</span></th>
        </tr>
    </thead>
    <tbody>
        ...
于 2013-07-11T19:27:57.373 に答える