对除了一个元素之外的所有元素应

时间:2018-01-13 08:23:25

标签: jquery css

我尝试在身体上应用不透明度,除了一个元素

<div scroll (scrollPosition)="scrollChanged($event)">...</div>

除了像这样的一个元素

$('body').css('opacity', '0.45');
$('body').css('filter', 'alpha(opacity=45)');

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

由于您尝试做的事情实际上是在点击它时除了搜索输入之外的所有内容,您可以通过显示半透明,固定定位图层(100%高度和100%显示)来逃避输入是集中的。输入必须具有更高的z-index(+ z / index的相对位置/绝对值才能工作),因此它保持在叠加层之上。

html, body{
  height:100%;
  background-color: steelblue;
}

.overlay{
  width: 100%; height:100%;
  position:fixed; top:0; left:0;
  background-color:rgba(0, 0, 0, 0.5);
  display:none;
}

input{
  position:relative;
  z-index:100;
}

input:focus ~ .overlay{
  display:block;
}
<body>
  <input type="text">
  <div class="overlay"></div>
</body>