【发布时间】:2015-03-29 01:27:01
【问题描述】:
我有一些简单的 CSS 类用于带有标题的面板。当背景是固定颜色时效果很好,因为我必须使用该颜色来隐藏标题文本后面的边框。但是,我现在想要一个背景图像而不是纯色。
有没有办法让标题元素覆盖父元素的边框并允许背景图像显示出来?我可以轻松地将颜色设置为transparent,但我没有found 将覆盖除纯色或图像以外的边框。
我有一种预感,它可以用 JS 来完成,并将图像重新用作标题的背景,并根据页面上的位置设置一些偏移量,但这似乎过于复杂,并且对我不起作用,因为我'想说明几个分层的背景图像形成一个模式,或者固定的附件,必须不断地重新计算。
有没有办法做到这一点?
.panel {
border: 2px solid #000000;
padding: 1em;
margin: 1em;
display: block;
}
.panel-header {
position: relative;
top: -1.5em;
background-color: #ffffff;
padding-left: 0.4em;
padding-right: 0.4em;
font-size: 1.2rem;
font-weight: bold;
}
.panel-content {
margin-top: -0.5em;
}
<div class="panel">
<span class="panel-header">
Title Goes Here
</span>
<p class="panel-content">Glorious baklava ex librus hup hey ad infinitum. Non sequitur condominium facile et geranium incognito.</p>
</div>
<hr/>
<div style="background-image: url(http://placekitten.com/510/200); padding: 2em;">
<div class="panel">
<span class="panel-header">
Title Goes Here
</span>
<p class="panel-content">Glorious baklava ex librus hup hey ad infinitum. Non sequitur condominium facile et geranium incognito.</p>
</div>
</div>
【问题讨论】:
-
不确定我是否明白你想要什么。像这样jsfiddle.net/ht27wg5b?
-
我为您创建了一个可重复使用的版本,它可以非常简单地在任何图像上实现。
标签: html css background transparency