<tr>中第一个<td>的CSS样式

Gar*_*yle 25 html css css-selectors

我试图将<tr>的所有<td>元素设置为右对齐,除了第一个,我想要左对齐.我试过这个:

<style>
td { text-align: right };
td:first-child { text-align: left };
</style>
Run Code Online (Sandbox Code Playgroud)

这使得所有细胞都是右对齐的.如果我交换这两行的顺序,那么所有单元格都是左对齐的.高度困惑.根据w3schools,

:first-child选择器用于选择指定的选择器,前提是它是父节点的第一个子节点.

但这似乎并没有发生在我身上.

Jos*_*ier 57

你的语法不正确.

td { text-align: right };                    /* This was being applied */
td:first-child { text-align: left };         /* This wasn't.. */
Run Code Online (Sandbox Code Playgroud)

应该:

td { text-align: right; }
td:first-child { text-align: left; }
Run Code Online (Sandbox Code Playgroud)

注意分号 - 它们不应该在括号之外 {}

除此之外,您使用:first-child得当.

jsFiddle演示


Sea*_*ean 6

td:nth-child(2) { text-align: right; }
Run Code Online (Sandbox Code Playgroud)

你可以在一行中做到这一点。