将text-align设置为右表格的每一行

时间:2016-09-03 18:58:28

标签: css css-tables

我想创建一个表,第一行将具有灰色背景,第二行将text-align设置为右,这将重复。

Grey background
Right
Grey bg
Right
...

我已经制作了灰色的行,但是如何在第二行右对齐?我甚至尝试使用以下代码在灰色行上进行右对齐:

.p-table tr:nth-child(even) {
background-color: #f1f1f1;
text-align:right;
}

但是文本对齐不会改变。

有什么方法可以做到吗?

**编辑:**在每一行中,都有一个div(来自w3.css的类w3-container),行的内容位于div中。

3 个答案:

答案 0 :(得分:3)

您可能需要将text-align放在<td>元素而不是行:

.p-table tr:nth-child(even) {
  background-color: #f1f1f1;
}

.p-table tr:nth-child(odd) td {
  text-align:right;
} 

td或任何实际包含文字的元素

答案 1 :(得分:3)

您可以使用:

table tr:nth-child(odd){
   background-color: grey
}
table tr:nth-child(even){
   text-align: right;
}

答案 2 :(得分:1)

您已经拥有nth-child(even) CSS选择器,因此您只需要一个nth-child(odd)选择器。 nth-child(even)选择器将控制文本对齐,而nth-child(odd)将控制背景颜色。这是一些示例代码:

li:nth-child(odd) {
    background-color: grey
}
li:nth-child(even) {
    text-align: right;
}

如果没有看到您的HTML代码,我无法为您提供与您的HTML匹配的确切CSS,因此您必须使用HTML调整上述代码。