气泡提示浮出层的两种纯CSS写法(浏览器全兼容)


气泡提示能给用户良好的浏览体验,相信大部分前端人都做过吧?(什么?你没做过,那信息提示层总做过吧?!)

最近在网上看到了一种写气泡提示的纯CSS代码,其代码简练,兼容性之强,是非常少见的,效果如下图。

首先,是第一种,利用字符“◆”实现。

请看代码,HTML部分:

1
2
3
4
< div class = "poptip" >
     < span class = "poptip-arrow poptip-arrow-bottom" >< em >◆</ em >< i >◆</ i ></ span >
     这是气泡提示,纯CSS[◆字符]写的哦
</ div >

CSS部分(上面的CSS代码看上去很多,但其实已经很简练了):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
.poptip {
     position : absolute ;
     top : 20px ;
     left : 20px ;
     padding : 6px 10px 5px ;
     * padding : 7px 10px 4px ;
     line-height : 16px ;
     color : #DB7C22 ;
     font-size : 12px ;
     background-color : #FFFCEF ;
     border : solid 1px #FFBB76 ;
     border-radius: 2px ;
     box-shadow: 0 0 3px #ddd ;
}
.poptip-arrow {
     position : absolute ;
     overflow : hidden ;
     font-style : normal ;
     font-family : simsun;
     font-size : 12px ;
     text-shadow : 0 0 2px #ccc ;
}
.poptip-arrow em,.poptip-arrow i {
     position : absolute ;
     left : 0 ; top : 0 ;
     font-style : normal ;
}
.poptip-arrow em {
     color : #FFBB76 ;
}
.poptip-arrow i {
     color : #FFFCEF ;
     text-shadow : none ;
}
.poptip-arrow- top ,.poptip-arrow- bottom {
     height : 6px ;
     width : 12px ;
     left : 12px ;
     margin-left : -6px ;
}
.poptip-arrow- left ,.poptip-arrow- right {
     height : 12px ;
     width : 6px ;
     top : 12px ;
     margin-top : -6px ;
}
  
.poptip-arrow- top {
     top : -6px ;
}
.poptip-arrow- top em {
     top : -1px ;
}
.poptip-arrow- top i{
     top : 0px ;
}
  
.poptip-arrow- bottom {
     bottom : -6px ;
}
.poptip-arrow- bottom em {
     top : -8px ;
}
.poptip-arrow- bottom i {
     top : -9px ;
}
  
.poptip-arrow- left {
     left : -6px ;
}
.poptip-arrow- left em {
     left : 1px ;
}
.poptip-arrow- left i {
     left : 2px ;
}
  
.poptip-arrow- right {
     right : -6px ;
}
.poptip-arrow- right em {
     left : -6px ;
}
.poptip-arrow- right i {
     left : -7px ;
}

第二种,边框实现,一样,直接上代码:

HTML部分:

1
2
3
4
5
< div class = "message-box" >
     < span >这是气泡提示,纯CSS[border]写的哦</ span >
     < div class = "triangle-border tb-background" ></ div >
     < div class = "triangle-border tb-border" ></ div >
</ div >

CSS部分(依旧是很简练的代码):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
. message-box {
     position : relative ;
     width : 240px ;
     height : 60px ;
     line-height : 60px ;
     background : #E9FBE4 ;
     box-shadow: 1px 2px 3px #E9FBE4 ;
     border : 1px solid #C9E9C0 ;
     border-radius: 4px ;
     text-align : center ;
     color : #0C7823 ;
         font-size : 12px ;
}
.triangle-border {
     position : absolute ;
     left : 30px ;
     overflow : hidden ;
     width : 0 ;
     height : 0 ;
     border-width : 10px ;
     border-style : solid dashed dashed dashed ;
}
.tb-background {
     bottom : -20px ;
     border-color : #C9E9C0 transparent transparent transparent ;
}
.tb-border {
     bottom : -19px ;
     border-color : #E9FBE4 transparent transparent transparent ;
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM