html/css 完整背景覆盖 div 在另一个 div 内
html/css full background overlay div inside another div
我有一个简单的 < div >(没有固定高度),里面有一段文字:
<div id="section">
<div class="container">
<h1>text</h1>
<p>More text</p>
</div>
<!-- <div id="overlay"></div> -->
</div>
CSS 类似于:
#section {
background: red;
overflow: hidden;
}
可以添加 div 具有透明图像背景吗?
叠加层应该悬停在主要的红色背景上,但在文本下方。
我认为是这样的,但行不通:
#section #overlay {
position: relative;
top: 0px;
left: 0px;
width: 100%;
height: 100px; /* ??? */
background: green;
opacity: 0.1;
}
尝试下面的示例使用 jquery ui 将减少工作量
<div id="dialog">Your non-modal dialog</div>
<a href="#" id="open">Open dialog</a>
$('#open').click(function() {
$('#dialog').dialog('open');
});
jQuery(document).ready(function() {
jQuery("#dialog").dialog({
autoOpen: false,
modal: true,
open: function(){
jQuery('.ui-widget-overlay').bind('click',function(){
jQuery('#dialog').dialog('close');
})
}
});
});
如果我没理解错的话,像这样的事情怎么样:
HTML:
<div id="section">
<div id="container">
<h1>My background is transparent!</h1>
<p>More text</p>
</div>
</div>
CSS:
#section {
width: 300px;
background-color: red;
}
#container {
position: relative;
left: 50px;
width: 200px;
text-align: center;
background-color: rgba(0,0,0,0.3);
}
这里的结果:JSFiddle
如果这不是您想要的,您能否更具体地说明定位?
#section {
background: red;
display: block;
position: relative;
overflow: hidden;
}
#container {
position: relative;
width: 100%;
text-align: center;
z-index: 9999;
}
#overlay {
position: absolute;
left: 0;
width: 100%;
height: 100%;
top: 0;
background-color: rgba(0,0,0,0.3);
}
我有一个简单的 < div >(没有固定高度),里面有一段文字:
<div id="section">
<div class="container">
<h1>text</h1>
<p>More text</p>
</div>
<!-- <div id="overlay"></div> -->
</div>
CSS 类似于:
#section {
background: red;
overflow: hidden;
}
可以添加 div 具有透明图像背景吗?
叠加层应该悬停在主要的红色背景上,但在文本下方。
我认为是这样的,但行不通:
#section #overlay {
position: relative;
top: 0px;
left: 0px;
width: 100%;
height: 100px; /* ??? */
background: green;
opacity: 0.1;
}
尝试下面的示例使用 jquery ui 将减少工作量
<div id="dialog">Your non-modal dialog</div>
<a href="#" id="open">Open dialog</a>
$('#open').click(function() {
$('#dialog').dialog('open');
});
jQuery(document).ready(function() {
jQuery("#dialog").dialog({
autoOpen: false,
modal: true,
open: function(){
jQuery('.ui-widget-overlay').bind('click',function(){
jQuery('#dialog').dialog('close');
})
}
});
});
如果我没理解错的话,像这样的事情怎么样:
HTML:
<div id="section">
<div id="container">
<h1>My background is transparent!</h1>
<p>More text</p>
</div>
</div>
CSS:
#section {
width: 300px;
background-color: red;
}
#container {
position: relative;
left: 50px;
width: 200px;
text-align: center;
background-color: rgba(0,0,0,0.3);
}
这里的结果:JSFiddle
如果这不是您想要的,您能否更具体地说明定位?
#section {
background: red;
display: block;
position: relative;
overflow: hidden;
}
#container {
position: relative;
width: 100%;
text-align: center;
z-index: 9999;
}
#overlay {
position: absolute;
left: 0;
width: 100%;
height: 100%;
top: 0;
background-color: rgba(0,0,0,0.3);
}