将覆盖添加到除元素之外的主体
Adding overlay to body except an element
CSS
.myoverlay
{
position: absolute;
background-color: rgba(0, 0, 0, 0.7);
top: 0;
left: 0;
bottom: 0;
right: 0;
opacity: 0.5;
}
HTML
<html>
<head></head>
<body>
<div id="MyDiv">
//some content
</div>
</body>
</html>
jQuery
$(function(){
$("body").not('#MyDiv').addClass("myoverlay");
});
在这里,我想将覆盖应用于除MyDiv之外的身体。上面显示的代码正在为包括MyDiv在内的整个身体应用覆盖。
这是代码!这是你想要的吗?
<html>
<head>
<title></title>
<script src="http://code.jquery.com/jquery-1.10.2.js"></script>
<style>
.myoverlay:not(#MyDiv) {
position: absolute;
background-color: rgba(0, 0, 0, 0.7);
top: 0;
left: 0;
bottom: 0;
right: 0;
opacity: 0.5;
}
#MyDiv {
width: 200px;
height: 200px;
background: White;
z-index: 10;
}
</style>
</head>
<body>
<div class="wrapper">
<div id="MyDiv">
<div>
</div>
</div>
</div>
</body>
<script>
$(function () {
$('.wrapper').addClass('myoverlay');
});
</script>
</html>
您可以通过添加具有覆盖的div来仅使用css,并从中排除您想要的部分
.overlay:not(.exclude){
background-color: rgba(0,0,0,0.5);
padding-top:2em;
position: fixed;
width: 100%;
height: 100%;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: 10;
}
.exclude {
background-color: white;
border-radius: 50%;
z-index: 100;
padding: 15px !important;
margin-left: 25px;
}
<div style="padding:20px" class="overlay">
<h2>Overlay</h2>
<p>Add an overlay effect to the page content </p>
<button class="exclude">Turn on overlay effect</button>
</div>
相关文章:
- 提取没有特定子元素的主体元素
- 如何根据主体高度动态更改元素边距顶部
- 将覆盖添加到除元素之外的主体
- 如何将鼠标左键上附加的工具栏删除到主体或其他元素
- 通过单击主体隐藏元素,除非是特定元素
- PHP 未接收 Polymer core-ajax 元素中的 POST 主体集
- 获取静态元素在主体上的位置
- 修复了元素动画滚动主体在顶部
- 计数表 主体元素内的长度
- 对除元素以外的主体应用模糊
- $(document).ready() 中的函数找不到 DOM 的主体元素
- 将元素高度设置为等于主体高度减去 170px
- 根据主体id将类添加到元素中
- Javascript如何在头部访问主体中的元素
- 在元素添加到主体后运行javascript
- 替换(淡入)主体背景而不影响嵌套元素
- 如何检查元素是否为主体
- 将光标放在带有JavaScript的iframe主体元素中的文本末尾
- 画布和主体元素的奇怪光标行为
- 显示:无或可见性:隐藏在页面加载的主体元素-它会影响SEO吗?