将不透明度设置为除最后一个孩子之外的所有人

时间:2016-04-13 06:52:29

标签: jquery css html5

<tbody id="items">
   <tr><td>Item 1</td></tr>
   <tr><td>Item 2</td></tr>
   <tr><td>Item 3</td></tr>
   <tr><td>Item 4</td></tr>
   <tr><td>Item 5</td></tr>
   <tr><td><a>1</a>
           <a>2</a>
           <a class="a3">3</a>
  </td></tr>
</tbody>

我想将不透明度设置为0.5,但最后一个<td>中的第三个锚标记除外。怎么设置?

3 个答案:

答案 0 :(得分:2)

var atd = $('.a3').closest('td')
$("td").not(atd).addClass('opacity')//add class here

您可以添加具有特定css的类

Demo

将不透明度设置为td的子项,但类a3

除外

Demo

使用.each()

  

描述:迭代jQuery对象,为每个匹配的元素执行一个函数。

要查找匹配,请添加班级

Demo

&#13;
&#13;
var atd = $('.a3')
$("td").each(function(index) {
console.log($(this).find('a').length)
  if ($(this).find('a').length > 0) {
    $(this).children().not(atd).addClass('opacity') //add class here
  } else {
    $(this).addClass('opacity') //add class here
  }
})
&#13;
.opacity {
  color: red;
  opacity: .5;
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
  <tbody id="items">
    <tr>
      <td>Item 1</td>
    </tr>
    <tr>
      <td>Item 2</td>
    </tr>
    <tr>
      <td>Item 3</td>
    </tr>
    <tr>
      <td>Item 4</td>
    </tr>
    <tr>
      <td>Item 5</td>
    </tr>
    <tr>
      <td><a>1</a>
        <a>2</a>
        <a class="a3">3</a>
      </td>
    </tr>

</table>
&#13;
&#13;
&#13;

答案 1 :(得分:1)

如果#page-wrapper的不透明度为0.5,则无法撤消&#34;在子组件中(再次给它一个不透明度)。

您也无法选择不包含td&#34;的{34} td在CSS。

我要做的是将单元格的内容包装在a中,然后执行以下操作:

<span>

答案 2 :(得分:1)

好吧可能有点冗长,但只是一个很好的css解决方案

<强> HTML

<table>
  <tbody id="items">
    <tr>
      <td>Item 1</td>
    </tr>
    <tr>
      <td>Item 2</td>
    </tr>
    <tr>
      <td>Item 3</td>
    </tr>
    <tr>
      <td>Item 4</td>
    </tr>
    <tr>
      <td>Item 5</td>
    </tr>
    <tr>
      <td><a>1</a>
        <a>2</a>
        <a class="a3">3</a>
      </td>
    </tr>
  </tbody>
</table>

<强> CSS

tr td,
tr:last-child td a {
  opacity: .5
}

tr:last-child td,
tr:last-child td a.a3 {
  opacity: 1
}
  

将上一个列表中的最后一个子不透明度设置为1,将<a>的不透明度设置为0.5,但不是最后一个<a>

工作示例:https://jsfiddle.net/4p3dfqye/