这是一款用纯CSS3打造的自定义Tooltip边框的应用,之前我们讨论过如何用CSS3来实现不同样式的Tooltip,今天的这款Tooltip却可以用CSS3来自定义边框,边框呈涂鸦风格。用CSS3实现自定义边框的好处是可以自适应边框内部的文字数量大小。
下面我们来分享一下实现的方法,主要由HTML代码和CSS代码组成。
HTML代码:
<div> <div> <div>CSS3简单实现涂鸦风格边框 Welcome to</div> </div> </div>
HTML代码结构非常简单,仅仅是3个div组成,当然后面的CSS代码才是关键,我们一步步来解说一下。
CSS代码:
.wrap { padding:35px 25px; width:450px; margin:40px auto; background:#586786; border-radius: 255px 15px 225px 15px/15px 225px 15px 255px; color:#eee; box-shadow:1px 1px 0px rgba(0, 0, 0, .75) }
这个CSS代码定义了最外面的边框,利用border-radius实现边框的圆角效果,同时利用了box-shadow实现类微微的阴影效果,不是很明显,你也可以修个属性值来让阴影变得更加明显一点。
.box { position:relative; background:#fff; border:solid 5px #fff; width:200px; height:100px; margin:0 auto; border-radius: 255px 15px 225px 15px/15px 225px 15px 255px; padding:10px; color:#666; box-shadow:2px 3px 1px rgba(0, 0, 0, .75) } .box:before { content: ""; position: absolute; bottom: -20px; left: 60px; border: 0; border-right-width: 30px; border-bottom-width: 20px; border-style: solid; border-color: transparent #fff; display: block; width: 0; }
这个box类和之前的类似,不过多了一个特性,就是利用CSS3的:before属性实现了下边框的小三角效果,这样就有tooltip的效果了。
.box .box { position:absolute; top:5px; left:5px; width:180px; height:80px; border-color:#593207; box-shadow:none; } .box .box:before { left: 45px; border-color: transparent #593207; }
这是最内部的box,和它外面那层box实现一样,同样利用before属性实现小三角效果。
其他就是一些边框线颜色和背景颜色的设置,就非常简单了。