我试图模糊除了一个div之外的所有元素。 我看过许多类似的问题one,我得到了这个:
.table-responsive:not(.confirm) {
filter: blur(3px);
pointer-events: none;
}
这基本上应该模糊除确认类之外的所有元素。这是一个js小提琴演示它:https://jsfiddle.net/qbuyuhts/1/
这是一些janky html但是能够显示问题。有谁知道为什么.confirm div模糊了?
答案 0 :(得分:2)
.table-responsive:not(.confirm) {
选择包含课程.table-responsive
但未包含课程.confirm
的元素,这是错误的,因为.confirm
是.table-responsive
的孩子。
所以改变你的代码:
.table-responsive table, .table-responsive div:not(.confirm) {
filter: blur(3px);
pointer-events: none;
}
.table-responsive table, .table-responsive div:not(.confirm) {
filter: blur(3px);
pointer-events: none;
}

<div style="border: none; overflow-x: visible;" class="table-responsive">
<div style="background-color:white; width:35%; position:absolute; left:34%;" class="confirm">
<h3 style="color:black">Are you sure?</h3>
<button style="background-color:black;color:blue">Cancel</button>
<button style="background-color:black;color:blue">Confirm</button>
</div>
<table id="tbl" style="width:100%">
<tbody style="display: block; overflow-y: auto">
<tr>
<td style="padding-right:1em"><a class="remove"><button>Remove</button></a></td>
<td style="padding-right:1em"><a><button>Edit</button></a></td>
<td class="coursetext"><h4 align="left"><b>{{ course }}</b><br><span class="tohide"><b>{{ sections }}</b></span></h4><hr></td>
</tr>
</tbody>
</table>
</div>
&#13;