需要帮助在div容器上定位箭头

时间:2012-01-05 07:07:22

标签: css

我正在尝试使用箭头制作纯css div(如语音泡泡)

我在这里创造了一个小提琴http://jsfiddle.net/ozzy/j9Wku/

基本上,当你将鼠标悬停在图像上时,我没有在小提琴中使用图像,而是在div框的左侧动画。将鼠标悬停在链接上时,您可以看到效果。

我想让它看起来像一个讲话泡泡,但努力实现这一目标。

这是我追求的形象。

enter image description here

任何帮助非常感谢。我只需要帮助为div做箭头。

3 个答案:

答案 0 :(得分:1)

我能想到的最简单的方法是在伪类之前使用在P标签之前插入“空格”然后用边框设置它。

p::before {
display: block;
position: absolute;
top: 18px;
left: -10px;
content: '';
border-top: 10px solid transparent;
border-right: 10px solid #eeeeee;
border-bottom: 10px solid transparent;
}

http://jsfiddle.net/j9Wku/6/

答案 1 :(得分:1)

我自己摆弄这个,并提出了一个很好的解决方案。代码如下。

.logo-heading  {
position:absolute;
font-size:12px;
margin-left:230px;
float:left;
line-height:16px;
color:#404040;
background: rgb(255,255,255);
background: -moz-linear-gradient(left,  rgba(255,255,255,1) 0%, rgba(238,238,238,1) 100%);
background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(255,255,255,1)), color-stop(100%,rgba(238,238,238,1)));
background: -webkit-linear-gradient(left,  rgba(255,255,255,1) 0%,rgba(238,238,238,1) 100%);
background: -o-linear-gradient(left,  rgba(255,255,255,1) 0%,rgba(238,238,238,1) 100%);
background: -ms-linear-gradient(left,  rgba(255,255,255,1) 0%,rgba(238,238,238,1) 100%);
background: linear-gradient(left,  rgba(255,255,255,1) 0%,rgba(238,238,238,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=1 );
top:38px;
padding:5px;
border-width:1px;
border-color: #cccccc #F6F6F6 #F6F6F6 #cccccc;
border-style:solid;
border-radius:3px;
-moz-border-radius: 3px;
 -webkit-border-radius: 3px;
text-shadow: 1px 1px 0 #fff;
       }
   .logo-heading2{
position:absolute;
font-size:12px;
margin-left:230px;
float:left;
line-height:16px;
display:none;
color:#404040;
background: rgb(255,255,255);
background: -moz-linear-gradient(left,  rgba(255,255,255,1) 0%, rgba(238,238,238,1) 100%);
background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(255,255,255,1)), color-stop(100%,rgba(238,238,238,1)));
background: -webkit-linear-gradient(left,  rgba(255,255,255,1) 0%,rgba(238,238,238,1) 100%);
background: -o-linear-gradient(left,  rgba(255,255,255,1) 0%,rgba(238,238,238,1) 100%);
background: -ms-linear-gradient(left,  rgba(255,255,255,1) 0%,rgba(238,238,238,1) 100%);
background: linear-gradient(left,  rgba(255,255,255,1) 0%,rgba(238,238,238,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=1 );
top:38px;
padding:5px;
border-width:1px;
border-color: #cccccc #F6F6F6 #F6F6F6 #cccccc;
border-style:solid;
border-radius:3px;
-moz-border-radius: 3px;
 -webkit-border-radius: 3px;
text-shadow: 1px 1px 0 #fff;
    }
#tail1 {
width: 0px;
height: 0px;
border: 10px solid;
border-color: transparent #f0f0f0 transparent transparent;
position:absolute;
top: 14px;
left: -21px;
}

#tail2 {
width: 0px;
height: 0px;
border: 10px solid;
border-color: transparent #ffffff transparent transparent;
position:absolute;
left: -20px;
top: 14px;
}

改变了js中的一些东西并且完美无缺。谢谢你们

答案 2 :(得分:0)

是一个例子 http://jsfiddle.net/amkrtchyan/j9Wku/7/  我用帆布试试