使用Javascript或CSS,无论如何选择具有css样式溢出的元素:hidden?

时间:2015-09-25 14:51:01

标签: javascript jquery css css-selectors

我的代码有问题,最后一个错误是只替换了一些html元素 overflow:hidden; to overflow:none; ,我可以使用javascript或css这样做,但我不知道现在怎么样。请帮帮我!

无论如何选择具有css样式的元素 溢出:隐藏; 在javascript或css中?

更新2 :(一切顺利!)

感谢 Pranav C Balan Michael_B 给出了一些很棒的答案。

var ele = $('.selector').filter(function() {
  return $(this).css('overflow') == 'hidden';
})

ele.css('color', 'red');
.overflow {
  overflow: hidden
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class=selector>1</div>
<div class="selector overflow">2</div>
<div class=selector style="overflow:hidden">3</div>
<div class=selector>1</div>
<div class="selector overflow">4</div>
<div class=selector>5</div>

2 个答案:

答案 0 :(得分:3)

您可以使用 filter()

var ele = $('.selector').filter(function() {
  return $(this).css('overflow') == 'hidden';
})

ele.css('color', 'red');
.overflow {
  overflow: hidden
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class=selector>1</div>
<div class="selector overflow">2</div>
<div class=selector style="overflow:hidden">3</div>
<div class=selector>1</div>
<div class="selector overflow">4</div>
<div class=selector>5</div>

答案 1 :(得分:2)

仅使用CSS,如果在HTML元素中声明overflow: hidden(即内联),则可以定位style属性并使用attribute selectors进行匹配。

HTML

<div class="..." id="..." style="overflow: hidden;"> ... </div>

CSS

div[style*="overflow:hidden"], div[style*="overflow: hidden"] { ... }

asterisk *告诉CSS将divstyle属性匹配,包含子字符串“overflow:hidden”或“overflow:hidden”