我有一个CSS功能区,它的两侧使用z-index。 http://jsfiddle.net/2nMe9/
我想将该对象放在容器上,但是,由于容器的深度可以设置为0,因此不会显示功能区的边距。 http://jsfiddle.net/Ws4CD/
<center><div style="background: black;width: 500px; height:600px;">
<img src="http://m3.i.pbase.com/u45/gaocus/upload/34638653.160x160hawk1301b.jpg" alt="" style="position:absolute;" />
<div id="ribbon">
<div id="r_content">Text</div>
</div>
如何完全展示色带?
答案 0 :(得分:1)
将z-indexes从负变为正(参见代码)。问题是背景的z-index
是0,这是所有元素的默认值。因此,将z-index置于0会将您的功能区部件发送到该黑色背景后面。
#ribbon {
padding: .34em 1em;
width: 129px;
margin-top: 130px;
position:relative;
color: #ffffff;
font: 16px 'Patua One', sans-serif;
text-align: center;
letter-spacing:0.1em;
text-shadow: 0px -1px 0px rgba(0,0,0,0.3);
box-shadow: inset 0px 1px 0px rgba(255,255,255,.3),
inset 0px 0px 20px rgba(0,0,0,0.1),
0px 1px 1px rgba(0,0,0,0.4);
background: #1eb2df;
display: inline-block;
}
#ribbon:before, #ribbon:after {
content: "";
width:.2em;
bottom:-.5em;
position:absolute;
display:block;
border: .9em solid #1eb2df;
box-shadow:0px 1px 0px rgba(0,0,0,0.4);
z-index:0;
}
#ribbon:before {
left:-1.35em;
border-right-width: .75em;
border-left-color:transparent;
}
#ribbon:after {
right:-1.35em;
border-left-width: .75em;
border-right-color:transparent;
}
#r_content:before, #r_content:after {
content:"";
bottom:-.5em;
position:absolute;
display:block;
border-style:solid;
border-color: #0675b3 transparent transparent transparent;
z-index:1;
}
#r_content:before {
left: 0;
border-width: .5em 0 0 .5em;
}
#r_content:after {
right: 0;
border-width: .5em .5em 0 0;
}