【发布时间】:2014-05-05 07:39:44
【问题描述】:
我正在尝试创建一个带有左箭头/三角形的框,该框周围有一个不透明的边框。我使用 CSS3 是为了避免使用图像。该框将包含动态内容,因此高度可能会有所不同。在随附的图片中,您可以在左侧看到我的进度,在右侧看到我正在努力实现的目标。
这是我目前所拥有的JSFiddle。
如您所见,有两个问题:
1) 由于不透明度,您可以看到三角形周围的边框与框周围的边框重叠。这需要避免。
2) 我需要箭头/三角形相当大,这意味着箭头/三角形的右侧同样大并且与框重叠,从而模糊了内容,您可以在 JSFiddle 链接和附加的图像中看到这一点。
需要一些帮助和指点!提前致谢。
.map_infobox {
margin: 30px 0 0 30px;
position: relative;
background: #FFF;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
width: 250px;
height: 250px;
border-opacity: 0.3;
border: 5px solid rgba(0, 0, 0, .3);
-webkit-background-clip: padding-box; /* for Safari */
background-clip: padding-box; /* for IE9+, Firefox 4+, Opera, Chrome */
}
.map_infobox:before{
content: "";
position: absolute;
top: 50%;
left:-21px;
z-index: 1;
height:30px;
width:30px;
margin-top: -15px;
background:#FFF;
transform:rotate(45deg);
-ms-transform:rotate(45deg);
-webkit-transform:rotate(45deg);
border-opacity: 0.3;
border-left: 5px solid rgba(0, 0, 0, .3);
border-bottom: 5px solid rgba(0, 0, 0, .3);
-webkit-background-clip: padding-box; /* for Safari */
background-clip: padding-box; /* for IE9+, Firefox 4+, Opera, Chrome */
}
<div class="map_infobox">
<div class="title">
Title goes here
</div>
<div class="copy">
Nam nibh dolor, luctus eget lorem tincidunt, egestas scelerisque erat? Morbi consequat auctor ipsum, eu ultricies nisl aliquam venenatis. Fusce feugiat posuere lectus at dictum. Integer sagittis massa justo, sed pretium ante hendrerit eget.
</div>
</div>
【问题讨论】:
标签: css pseudo-element