3

我正在尝试删除表格中第一个 h3 元素上方的边距(直接在其上方的 h2 元素看起来真的很奇怪)

是否可以选择第一个 h3 元素?

<table>
<tbody>
    <tr>
        <td>
            <h3>I want to select this</h3>
        </td>
    </tr>
    <tr>              
        <td>
            <h3>But not this</h3>
        </td>
    </tr>
</tbody>
</table>

我试过这个:

table tbody tr td:first-child h3 {
    margin-top: 0em;
}

但我失败得很惨

4

3 回答 3

3

您需要附加:first-childto ,tr因为 everytd是它的第一个也是唯一的孩子tr

table tbody tr:first-child td h3 {
    margin-top: 0em;
}
于 2012-11-10T08:52:14.453 回答
0
table tbody tr td:first-child h3 {
    margin-top: 0em;
}

td 在这两种情况下都是第一个孩子,在 tr 上使用它,或者更好地为第一个 h3 添加一个类。

于 2012-11-10T08:56:50.877 回答
0

对于不支持的浏览器,:first-child您可以以另一种(反向)方式执行此操作,通过选择相邻的兄弟来为下一个项目指定单独的tr样式+

table tbody tr td h3 {
    margin-top: 0em;
}

table tbody tr + tr td h3 {
    margin-top: 1em; /* any needed value for all following H3's */
}
于 2012-11-10T08:59:09.503 回答