• css伪元素before/after和画三角形的搭配应用


    想要实现的效果如下:

    第一步:如何用css画出三角形?

     1 /* css画三角形 */
     2 .sanjiao{
     3     width:0;
     4     border-top:40px solid red;
     5     border-bottom:40px solid green;
     6     border-left:40px solid blue;
     7     border-right:40px solid yellow;
     8 }
     9 
    10 <div class="sanjiao">
    11 </div>

    如下显示

     

    要显示一个三角形,那么去掉其他三个三角形即可。

    如果删掉其他三条边,那剩下的一条边也不会显示,最好是让其他三条边显示透明。

    /* css画三角形 */
    .sanjiao{
        width:0;
        border-width:40px;
        border-style:solid;
        border-color:red transparent transparent transparent; /* transparent 设置边框颜色透明 */
    }
    
    <div class="sanjiao">
    </div>

    如下显示

    第二步:如何让三角形紧贴在元素上?

    可以定义一个标签,如上画出三角形;也可以用before和after伪元素画出三角形。

    利用position定位使得三角形紧贴在元素上的指定位置。

    完整代码如下:

    <!DOCTYPE html>
    <html>
    <head>
    <title></title>
    <style>
    .wrap{
        margin-top:30px;
        text-align:center;
    }
    .jiantou{
        display:inline-block;
        padding:10px;
        background:#2E963D;
        color:#FFF;
        border-radius:8px;
        
        position:relative;
    }
    
    /* 下箭头 */
    .jiantou:after{
        display:block;
        content:'';
        border-width:8px 8px 8px 8px;
        border-style:solid;
        border-color:#ff4d4d transparent transparent transparent;
        
        /* 定位 */
        position:absolute;
        left:40%;
        top:100%;
    }
    /* 上箭头 */
    .jiantou:before{
        display:block;
        content:'';
        border-width:8px 8px 8px 8px;
        border-style:solid;
        border-color:transparent transparent #ff4d4d transparent;
        
        /* 定位 */
        position:absolute;
        left:40%;
        top:-16px;
    }
    </style>
    </head>
    
    <body>
    <div class="wrap">
        <span class="jiantou">LIUCHUAN</span>
    </div>
    </body>
    </html>

    如第一幅图片

    小结:QQ上的聊天窗口中说完话之后,就会有个文字泡,这个文字泡有这个箭头指向头像。如下:

    用这种方法可以实现如上文字泡效果。

  • 相关阅读:
    nginx 负载均衡配置
    nginx 配置优化详解
    duilib -- Label控件的bug(转载)
    Duilib实现GroupBox控件
    Duilib动画按钮实现(转载)
    Duilib中Webbrowser事件完善使其支持判断页面加载完毕
    Duilib实现圆形头像控件
    duilibutilsutils.h(251) : error C2504: “VARIANT”: 未定义基类
    软件项目版本号的命名规则及格式
    c++中char*wchar_t*stringwstring之间的相互转换
  • 原文地址:https://www.cnblogs.com/lhat/p/4800328.html
Copyright © 2020-2023  润新知