0

我在子表的 tr 内有表我不想应用悬停和斑马条纹,下面是我的代码不起作用,子表显示悬停和斑马条纹:

<table class='zebrastrip'>
   <tr>
    <td>1</td>
    <td>2</td>
   </tr>
   <tr>
     <td>3</td>
     <td>4</td>
   </tr>
   <tr>
      <table class='atable'>
        <tr>
          <td>5</td>
          <td>6</td>
        </tr>
        <tr>
          <td>7</td>
          <td>8</td>
        </tr>
      </table>
  </tr>
</table>

   .atable tr:nth-child(2n-1){
        background-color:#FFFFFF;
    }
   .atable tr:hover{
     background-color:#FFFFFF;
   }
    .zebrastrip tr:nth-child(2n-1){
        background-color:#f9f9f9;
    }
    .zebrastrip tr:hover{
        background-color:#fce4cc;
    }

谢谢

4

1 回答 1

1

固定代码的小提琴:http: //jsfiddle.net/r3eAn/

固定的 HTML:

<table class='zebrastrip'>
   <tr>
    <td>1</td>
    <td>2</td>
   </tr>
   <tr>
     <td>3</td>
     <td>4</td>
   </tr>
   <tr>
      <td colspan="2">
          <table class='atable'>
            <tr>
              <td>5</td>
              <td>6</td>
            </tr>
            <tr>
              <td>7</td>
              <td>8</td>
            </tr>
          </table>
      </td>
  </tr>
</table>

修复了 CSS 以始终具有内表背景#fff:

内部表格样式的优先级更高

定义内表的背景

.zebrastrip tr:nth-child(2n-1){
    background-color:#f9f9f9;
}
.zebrastrip tr:hover{
    background-color:#fce4cc;
}
.zebrastrip .atable{
    background: #FFFFFF;
}
.zebrastrip .atable tr:nth-child(2n-1){
    background-color:#FFFFFF;
}
.zebrastrip .atable tr:hover{
    background-color:#FFFFFF;
}
于 2012-11-07T10:00:50.647 回答