纯CSS打造Bubble气泡提示框
要做一个Bubble气泡提示框,如果用CSS3特性来做很容易,用图片来做也可以,但前者有兼容性问题(好多苦逼们还在用低级浏览器呢,真希望你不是其中一个),后者又不够灵活,用图片做有一个例子可以看看jquery打造一款侧边弹出的垂直导航。
那有没有办法弄一个既方便又兼容又友爱的Bubble气泡提示框呢?答案是可以的,而且就用纯CSS来来实现,当然在没出效果之前你有权去怀疑这件事情,但出了效果后,你必须坚定的认识:楼主是老实人,出家人是不打诳语的。其实呢这个方法是我以前收藏在另一个博客中的,现在为了能让更多的朋友方便地使用,就分享到博客园吧。无论你是否用得到,我都感谢你抽空来临幸我这篇文章。
首先我们来定义一组CSS样式,用来描述bubble框的样式,这里分4种情况,箭头分别在上、右、下、左,CSS代码如下:
.bubble-box{
background:#EEE;
width:200px;
margin-bottom:30px;
}
.bubble-box .wrap{
background:#EEE;
/* 修正IE6 */
_position:relative;
_z-index:10;
}
/* arrow-effect */
.arrow-left{ border-left:20px solid #FFF; border-top:20px solid #EEE; margin-top:20px;}
.arrow-right{ border-right:20px solid #FFF; border-top:20px solid #EEE;}
.arrow-top{ border-left:20px solid #EEE; border-top:20px solid #FFF; margin-left:20px;}
.arrow-bottom{ border-left:20px solid #EEE; border-bottom:20px solid #FFF; margin-left:20px;}
.arrow-left .wrap,
.arrow-right .wrap{
width:180px;
padding:12px 10px 12px 10px;
margin-top:-40px;
}
.arrow-top, .arrow-bottom{ width:140px;}
.arrow-top .wrap,
.arrow-bottom .wrap{
width:180px;
padding:12px 10px 12px 10px;
margin-left:-40px;
}
接下来就分别来应用上述样式从而来实现bubble弹出框的效果:
1、箭头在上方的情况,html代码如下:
<div class="bubble-box arrow-top">
<div class="wrap">css bubble -- 箭头在上方</div>
</div>
2、箭头在右方的情况,html代码如下:
<div class="bubble-box arrow-right">
<div class="wrap">css bubble -- 箭头在右方</div>
</div>
3、箭头在下方的情况,html代码如下:
<div class="bubble-box arrow-bottom">
<div class="wrap">css bubble -- 箭头在下方</div>
</div>
4、箭头在左方的情况,html代码如下:
<div class="bubble-box arrow-left">
<div class="wrap">css bubble -- 箭头在左方</div>
</div>
怎么样,代码还算简洁吧。另外问一下,如何在博客园编辑器里使用CSS代码,本来我打算做成在线demo的,但是style放不进去,只好截图了。所以你只好根据提供的代码自己去搞了。
忘记可以上传代码的,实例代码已上传,要用的可以下载(更新于:11月13日 9:50)
==================================
如果能成为巨人,我愿意献出肩膀
刚开的围脖:http://weibo.com/sxwgf 欢迎交流
==================================