CSS ::之前在Table Cell上

时间:2011-06-26 07:47:05

标签: html css pseudo-element

我想在某些表格单元格上添加一个::before选择器,但是它有position:absolute,但它失败了:

table{ border:1px solid #ccc; padding:10px; }
table td{ border:1px solid #ccc; padding:5px; }

.useBefore::before{
  content:'before';
  position:absolute;
}
<table>
       <tbody>
         <tr>
           <td>bird</td>
           <td>animal</td>
           <td>nature</td>
        </tr>
        <tr class='useBefore'>
           <td>building</td>
           <td>robot</td>
           <td>city</td>
        </tr>
      </tbody>
  </table>

我注意到,如果我将::before添加到所有tr,那么它可以正常工作:

table{ 
    border:1px solid #ccc; 
    padding:10px;
  }
  table td{
    border:1px solid #ccc;
    padding:5px;
  }
  
  tr::before{
    content:'before';
    position:absolute;
  }
<table>
    <tbody>
      <tr>
        <td>bird</td>
        <td>animal</td>
        <td>nature</td>
      </tr>
      <tr class='useBefore'>
        <td>building</td>
        <td>robot</td>
        <td>city</td>
      </tr>
    </tbody>
  </table>

但这不是我想要的,因为我只想在其中一些上添加它。

1 个答案:

答案 0 :(得分:17)

我不确定它为什么会完全失败,但你可以把它添加到第一个表格单元格上。

  .useBefore td:first-child:before{
    content:'before';
    position:absolute;
  }