CSS 中的动态对话泡泡
Dynamic speech bubble in CSS
我正在尝试做这样的事情:
我想使用纯 CSS。 Bootstrap v3 已经加载。
我已经非常接近
.bubble {
position:relative;
left: 15px;
padding: 10px;
background: #FFFFCC;
margin: 5px 5px;
max-width: 250px;
border: #FFCC00 solid 1px;
}
.bubble:before {
position:absolute;
content: "";
top:15px;left:-10px;
border-width: 10px 15px 10px 0px;
border-color: transparent #FFFFCC;
border-style: solid;
}
但结果并不是我想要的。
我四处搜索并摆弄了一下,但没有找到适合我需要的优雅解决方案。
几年前我会使用表格和图像来完成此操作,但在 2015 年肯定会有更好的方法吗?
这是 2015 年的版本...
.bubble {
position: relative;
background: #FFFFCC;
border: 1px solid #FFCC00;
max-width:250px;
padding:10px;
font-family:arial;
margin:0 auto;
font-size:14px;
border-radius:6px;
}
.bubble:after,
.bubble:before {
right: 100%;
top: 50%;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none;
}
.bubble:after {
border-color: rgba(255, 255, 204, 0);
border-right-color: #FFFFCC;
border-width: 15px;
margin-top: -15px;
}
.bubble:before {
border-color: rgba(255, 204, 0, 0);
border-right-color: #FFCC00;
border-width: 16px;
margin-top: -16px;
}
实际查看:
注意:
您只需更改 .bubble:after
定义中的 border-width
和 margin-top
值即可调整箭头的大小(当前设置为 15px 和 -15px)
为确保它保留边框,您还需要更改 .bubble:before
定义中的这两个相同值(当前设置为 16px 和 -16px)
我正在尝试做这样的事情:
我想使用纯 CSS。 Bootstrap v3 已经加载。
我已经非常接近
.bubble {
position:relative;
left: 15px;
padding: 10px;
background: #FFFFCC;
margin: 5px 5px;
max-width: 250px;
border: #FFCC00 solid 1px;
}
.bubble:before {
position:absolute;
content: "";
top:15px;left:-10px;
border-width: 10px 15px 10px 0px;
border-color: transparent #FFFFCC;
border-style: solid;
}
但结果并不是我想要的。
我四处搜索并摆弄了一下,但没有找到适合我需要的优雅解决方案。
几年前我会使用表格和图像来完成此操作,但在 2015 年肯定会有更好的方法吗?
这是 2015 年的版本...
.bubble {
position: relative;
background: #FFFFCC;
border: 1px solid #FFCC00;
max-width:250px;
padding:10px;
font-family:arial;
margin:0 auto;
font-size:14px;
border-radius:6px;
}
.bubble:after,
.bubble:before {
right: 100%;
top: 50%;
border: solid transparent;
content: " ";
height: 0;
width: 0;
position: absolute;
pointer-events: none;
}
.bubble:after {
border-color: rgba(255, 255, 204, 0);
border-right-color: #FFFFCC;
border-width: 15px;
margin-top: -15px;
}
.bubble:before {
border-color: rgba(255, 204, 0, 0);
border-right-color: #FFCC00;
border-width: 16px;
margin-top: -16px;
}
实际查看:
注意:
您只需更改 .bubble:after
定义中的 border-width
和 margin-top
值即可调整箭头的大小(当前设置为 15px 和 -15px)
为确保它保留边框,您还需要更改 .bubble:before
定义中的这两个相同值(当前设置为 16px 和 -16px)