首页 > web前端 > css教程 > 正文

CSS3中伪元素实现气泡框的代码(before、after)

不言
发布: 2018-08-09 16:14:40
原创
2530 人浏览过

本篇文章给大家带来的内容是关于CSS3中伪元素实现气泡框的代码(before、after),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

气泡框的原理其实也就是普通边框+三角形,CSS实现三角形也是利用了border属性
1、三角形是实心的

html代码:

<div class="wrap"></div>
登录后复制

css代码:

.wrap{
            position: relative;            
            width: 600px;            
            height: 400px;            
            border: 10px solid #3377aa;            
            border-radius: 20px;        
    }
.wrap::before{
            position: absolute;            
            content: &#39;&#39;;            
            width: 0;            
            height: 0;            
            border-width: 40px 20px;  
            /*上下、左右的border值*/
            border-style: solid;            
            border-color: #3377aa transparent transparent;
            /*只设置上面border的颜色,左右和下面都设置为透明,会出现一个倒三角*/
            bottom: -80px; 
            /*以下给三角形定位,使其处于底部居中处*/
            left: 50%;            
            margin-left: -20px; 
        }
登录后复制

效果图:

2、如果需要三角形是空心的,效果图如下,需要同时使用before和after
这里写图片描述

css代码如下:

.wrap::before{
            position: absolute;            
            content: &#39;&#39;;            
            width: 0;            
            height: 0;            
            border-width: 40px 20px;            
            border-style: solid;            
            border-color: #3377aa transparent transparent;            
            bottom: -80px;            
            left: 50%;            
            margin-left: -20px;        
        }
.wrap::after{            
                position: absolute;            
                content: &#39;&#39;;            
                width: 0;            
                height: 0;            
                border-width: 40px 20px;            
                border-style: solid;            
                border-color: #fff transparent transparent;
                /*白色的倒三角*/
            bottom: -60px; 
            /*位置和往上一些*/
            left: 50%;            
            margin-left: -20px;        
         }
登录后复制

简写的话是这样:

        .wrap::before,        
        .wrap::after{
                    position: absolute;            
                    content: &#39;&#39;;            
                    width: 0;            
                    height: 0;            
                    border-width: 40px 20px;            
                    border-style: solid;            
                    border-color: #3377aa transparent transparent;            
                    bottom: -80px;            
                    left: 50%;            
                    margin-left: -20px;        
                }
        .wrap::after{
                    border-color: #fff transparent transparent;            
                    bottom: -60px;       
               }
登录后复制

原理就是将两个三角形叠加,下面的三角形border颜色和外面的框一致,上面的border颜色设置为白色,为了能更好看清,我将body颜色设为#ccc,如下:
这里写图片描述

相关文章推荐:

CSS3中增加的伪类有哪些及其作用是什么?

css选择器有哪些类型?css常用选择器的简单介绍

以上是CSS3中伪元素实现气泡框的代码(before、after)的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!