效果图:
为了便于区别,我们将那个三角形绘制成了红色,显示框绘制成了橙黄色。
- 做出上面三个元素:问号及其圆圈、三角形和长方形提示框
- 设置三角形及长方形提示框不可见
- 设置鼠标经过问号时显示提示框
- hover
- before
p:before{
content:'添加的内容'
}
p{width:20px; height:20px; background-color:green;}
它显示出来的是一个边长为20px的正方形p{width:20px; height:20px; background-color:green; border-radius:50%; text-align:center; }
p:before{content:'?'; color:orange; font-weight: bold;}
p:before{
content:'';
border: 10px solid transparent;
border-bottom-color:#F3252D;
}
box-shadow:10px 20px 15px rgba(4,235,4,0.2);
<div class="tips">
<p>提示信息的内容</p>
</div>
.tips{
width:20px;
height:20px;
border-radius:50%;
background-color:green;
text-align:center;
}
.tips:before{
content:'?';
font-weight:bold;
color:red;
}
/*注:以上就是刚刚说的那个圆及它中间的问号*/
/*注:下面绘制长方形内容显示框,并使它不显示*/
.tips p{
display : none; /*刚开始时隐藏*/
width : 300px;
padding : 20px; /*此处使用padding而不用height,想想有何区别*/
border-radius : 5px; /*圆角*/
background-color : #fbcc7d; /*背景色*/
color : #000; /*文字颜色*/
box-shadow : 1px 1px 1px rgba(0,0,0,0.2); /*阴影*/
position : absolute; /*固定位置,不然会撑开页面*/
left : auto; /*边框起始位置*/
margin-top : 8px; /*边框距离顶部8px,这是因为要在它上面加上一个三角形,8px是那个三角形的边长*/
text-align : left; /*文字居左*/
}
/*注:下面给内容框添加一个三角形*/
.tips p:before{
content : '';
border : 8px solid transparent;
border-bottom-color : #F3252D;
position : absolute; /*位置固定*/
left : 5px; /*三角形与内容框的相对位置*/
top : -16px; /*使它在P元素的上面16px处(这16px就是三角形的边长的两倍)*/
}
/*给问号添加hover属性*/
.tips:hover p{
display : block;
}
至此,提示框就完成了。