Sass可以按位置选择元素吗?

时间:2013-04-22 11:17:35

标签: css sass

有一个表格,id

没有td
<table id='mytable'>
   <tr>
     <td>
         I want to right without id 
     </td>

     <td>
         I want to left without id
     </td>
    </tr>
</table>

如何让第一个td的内容对齐,第二个对齐?

3 个答案:

答案 0 :(得分:7)

是的,您可以通过CSS来完成。

使用此:

table tr td:nth-child(1){
}
table tr td:nth-child(2){
}

像更多。这是参考站点。

  1. nth-child
  2. evenodd

答案 1 :(得分:1)

使用CSS,您可以使用:

:nth-child

td:nth-child(an+b)
  • a是比率(或斜率),或者1 =每个元素,2 =每隔一个元素,3 =每第三个元素,并且更柔和。

  • n是常数。它实际上是n。只是并且仅在您使用。

  • 时使用
  • b是子选择器的初始位置(或y截距)。意思是+ 1将从找到的第一个元素开始,+ 3将是第三个... b不能是负数也不是零。

,此方法不适用于IE8(因为不支持CSS3伪造类=&lt; IE8),所以,如果你支持IE8,你可以使用一点点jQuery ...或尝试类似Selectivizr的东西,它使用js shim来支持IE6-8与CSS子选择器如nth-child。

你可以做的另一件事就是给每一行偶数/奇数类(或列-xyz-1,column-xyz-2等),并按照这种方式设置样式...因为它给你同样的灵活性管理风格...

答案 2 :(得分:0)

我发现你只有两个要处理的元素。

除了已经提到的nth-child伪类之外,您还可以使用+相邻兄弟组合器:

td {
  /* Styles for the first element */
}

td + td {
  /* Styles for all elements except the first*/
  text-align: right;
}

从7版开始,IE支持这个组合器!