css - 访问特定的表格单元格

标签 css

我有一个通过foreach(PHP)生成的表问题是我想修改这个表上的一些特定单元格(红色)知道我不能添加一个类,我必须用CSS样式访问它

编辑: 我需要为第一个和最后一个添加样式 <td> , 最后一个<tr>.child

确实,这是一个创建 <tr> 的 ajax 请求与 .child类 所以有时有 2 <tr>有时 10 <tr>

.tb-child .child th, .tb-child .child td, .details-close {
    background: #f3f3f3;
    text-align: center;
}

tbody > tr.child:last-child > td:first-child {
  border-radius: 4px
}
    
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" rel="stylesheet"/>
<div class="table-responsive table-padding tb-child">
  <table id="data-tb" class="table table-striped table-bordered dataTable no-footer" role="grid" aria-describedby="data-tb_info">
    <thead>
      <tr>
        <th></th>
        <th>1</th>
        <th>2</th>
        <th>3</th>
        <th>4</th>
        <th>5</th>
        <th>6</th>
      </tr>
    </thead>
    <tbody>
      <tr class="5007963">
        <td id="5007963"></td>
        <td>
          <a rel="details">5007963</a>
        </td>
        <td>25</td>
        <td data-sort="0" class="sorting_1">
          <div>25</div>
        </td>
        <td data-sort="68">
          <div>42</div>
        </td>
        <td data-sort="-16">
          <div>21</div>
        </td>
        <td></td>
      </tr>
      <tr class="5012152">
        <td class="details-control details-close first-plan"></td>
        <td>
          <a rel="details">5012152</a>
        </td>
        <td>3000</td>
        <td data-sort="-22.23">
          <div>2333</div>
        </td>
        <td data-sort="-22.2">
          <div>2334</div>
        </td>
        <td data-sort="-29.63">
          <div>2111</div>
        </td>
        <td></td>
      </tr>
      <tr class="child 5012152">
        <th></th>
        <th>1</th>
        <th>2</th>
        <th>3</th>
        <th>4</th>
        <th>5</th>
        <th></th>
      </tr>
      <tr class="child 5012152">
        <td></td>
        <td>
          <a rel="bin">
          AZERTY1
          </a>
        </td>
        <td>1000</td>
        <td data-sort="66.7">
          <div>1667</div>
        </td>
        <td data-sort="16.7">
          <div>1167</div>
        </td>
        <td data-sort="44.4">
          <div>1444</div>
        </td>
        <td></td>
      </tr>
      <tr class="child 5012152">
        <td style="background: red"></td>
        <td>
          <a rel="bin">
          AZERTY2
          </a>
        </td>
        <td>1000</td>
        <td data-sort="-33.3">
          <div>667</div>
        </td>
        <td data-sort="-33.3">
          <div>667</div>
        </td>
        <td data-sort="-66.7">
          <div>333</div>
        </td>
        <td style="background: red"></td>
      </tr>
      <tr class="5012277">
        <td id="5012277"></td>
        <td>
          <a rel="details">5012277</a>
        </td>
        <td>10</td>
        <td data-sort="-30" class="sorting_1">
          <div>7</div>
        </td>
        <td data-sort="-30">
          <div>7</div>
        </td>
        <td data-sort="-30">
          <div>7</div>
        </td>
        <td></td>
      </tr>
    </tbody>
  </table>
</div>

jsiddle

我尝试了几种方法,例如:

tbody > tr.child:last-child > td:first-child {
  border-radius: 4px
}

但是没有任何效果..怎么办?

最佳答案

这对你有用。

我使用了 nth-last-child(2) 来定位红色的 td

我添加的代码:

tbody > tr:nth-last-child(2)>td:first-child,tbody > tr:nth-last-child(2)>td:last-child {
  border-radius: 4px;
}

.tb-child .child th, .tb-child .child td, .details-close {
    background: #f3f3f3;
    text-align: center;
}

tbody > tr:nth-last-child(2)>td:first-child,tbody > tr:nth-last-child(2)>td:last-child {
  border-radius: 4px;
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" rel="stylesheet"/>
<div class="table-responsive table-padding tb-child">
  <table id="data-tb" class="table table-striped table-bordered dataTable no-footer" role="grid" aria-describedby="data-tb_info">
    <thead>
      <tr>
        <th></th>
        <th>1</th>
        <th>2</th>
        <th>3</th>
        <th>4</th>
        <th>5</th>
        <th>6</th>
      </tr>
    </thead>
    <tbody>
      <tr class="5007963">
        <td id="5007963"></td>
        <td>
          <a rel="details">5007963</a>
        </td>
        <td>25</td>
        <td data-sort="0" class="sorting_1">
          <div>25</div>
        </td>
        <td data-sort="68">
          <div>42</div>
        </td>
        <td data-sort="-16">
          <div>21</div>
        </td>
        <td></td>
      </tr>
      <tr class="5012152">
        <td class="details-control details-close first-plan"></td>
        <td>
          <a rel="details">5012152</a>
        </td>
        <td>3000</td>
        <td data-sort="-22.23">
          <div>2333</div>
        </td>
        <td data-sort="-22.2">
          <div>2334</div>
        </td>
        <td data-sort="-29.63">
          <div>2111</div>
        </td>
        <td></td>
      </tr>
      <tr class="child 5012152">
        <th></th>
        <th>1</th>
        <th>2</th>
        <th>3</th>
        <th>4</th>
        <th>5</th>
        <th></th>
      </tr>
      <tr class="child 5012152">
        <td></td>
        <td>
          <a rel="bin">
          AZERTY1
          </a>
        </td>
        <td>1000</td>
        <td data-sort="66.7">
          <div>1667</div>
        </td>
        <td data-sort="16.7">
          <div>1167</div>
        </td>
        <td data-sort="44.4">
          <div>1444</div>
        </td>
        <td></td>
      </tr>
      <tr class="child 5012152">
        <td style="background: red"></td>
        <td>
          <a rel="bin">
          AZERTY2
          </a>
        </td>
        <td>1000</td>
        <td data-sort="-33.3">
          <div>667</div>
        </td>
        <td data-sort="-33.3">
          <div>667</div>
        </td>
        <td data-sort="-66.7">
          <div>333</div>
        </td>
        <td style="background: red"></td>
      </tr>
      <tr class="5012277">
        <td id="5012277"></td>
        <td>
          <a rel="details">5012277</a>
        </td>
        <td>10</td>
        <td data-sort="-30" class="sorting_1">
          <div>7</div>
        </td>
        <td data-sort="-30">
          <div>7</div>
        </td>
        <td data-sort="-30">
          <div>7</div>
        </td>
        <td></td>
      </tr>
    </tbody>
  </table>
</div>

但是有些样式来自bootstarap css,所以如果你想过度调整它们,你也必须在你的样式中使用!important

示例 -

tbody > tr:nth-last-child(2)>td:first-child,tbody > tr:nth-last-child(2)>td:last-child {
  border-radius: 4px !important;
}

希望这对您有所帮助。

关于css - 访问特定的表格单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46789926/

相关文章:

javascript - 尝试实现特定于 Django 模型属性的“阅读更多”按钮

html - 将div数据转换为word文档时绑定(bind)样式表和HTML div

css - 为什么侧边栏显示在页面底部?

css - 使用 CSS 对齐图像列表

css - div的跨浏览器定位

css - 响应式应用 CSS 类

html - 表格中的空列重置表格宽度

css - 用单杠去掉右边多余的空格?

CSS 背景颜色很挑剔

jquery - 将 div 的水平滚动条固定到页面底部