CSS在一个id下选择几种类型

时间:2012-11-22 19:29:19

标签: css

我想选择div下的所有th和td。 写点如下:

#div_id th,td {
   ...
}

不好,因为它选择了所有的td-s。

我看到了解决方案here来编写

#div_id th,#div_id td { 
   ... 
}

还有其他方式,所以我不应该重复#div_id?

感谢。

2 个答案:

答案 0 :(得分:0)

纯粹的CSS明智,没有比你自己更好的答案了。但你可以研究SASS或类似技术,这样就可以做到这一点。

答案 1 :(得分:0)

假设你的代码看起来像这样:

<div id="div_id">
    <table border="1">
        <tr>
            <th>
                Header 1
            </th>
            <th>
                Header 2
            </th>
        </tr>
        <tr>
            <td>
                row 1,
                <p>
                    cell 1
                </p>
            </td>
            <td>
                row 1,
                <p>
                    cell 2
                </p>
            </td>
        </tr>
        <tr>
            <td>
                row 2,
                <p>
                    cell 1
                </p>
            </td>
            <td>
                row 2, 
                <p>
                    cell 2
                </p>
            </td>
        </tr>
    </table>
</div>​​​​​​​​​​​​​​​​​​​​​​

您可以应用以下规则:

#div_id tr > * {
    border: 1px dotted #CCC;
}​

选择tr内的第一个元素(仅第一个元素),该元素仅限于thtd

请注意,如果我将规则定义为:

#div_id tr * {
    border: 1px dotted #CCC;
}​

p代码也有虚线边框。

然而,简单地输入额外的8个字符通常更有意义,因为它更容易理解你以后做了什么。