美文网首页
css绘制外发光阴影和三角形

css绘制外发光阴影和三角形

作者: __鹿__ | 来源:发表于2021-12-03 11:35 被阅读0次
box-shadow: 0 2px 12px 0 rgba(104, 104, 104, 0.2);
效果图
image.png
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>css绘制外发光阴影和三角形</title>
    <style>
        .popDiv{
            width: 170px;
            height: 160px;
            box-shadow: 0 2px 12px 0 rgb(0 0 0 / 10%); /* 弹窗外圈发光 */
            border: 1px solid #e4e7ed;
            border-radius: 4px;
            background-color: #fff;
            margin: 0 auto;
            margin-top: 109px;
            position: relative;
        }
        ul{
            width: 100%;
            height: 100%;
            margin: 0;
            padding: 0;
        }
        li{
            list-style: none;
            height: 24px;
            color: #606266;
            padding-left: 10px;
            margin-top: 10px;
        }
        .popper_arrow{
            position: absolute;
            display: block;
            width: 0;
            height: 0;
            border-color: transparent;
            border-style: solid;
            top: -20px;
            right: 10%;
            margin-right: 0px;
            border-top-width: 0;
            border-bottom-color: #ddd; /*这里的三角形叠在白色突出三角形的下面。看起来有一种边框的效果  */
            border-width: 10px;
            filter: drop-shadow(0 2px 12px rgba(0,0,0,.04));/* 作用就是让小三角形看起来有阴影的效果 */
            /* 
                filter 即是 CSS 滤镜
                filter: drop-shadow(x偏移, y偏移, 模糊大小, 色值);
             */
        }
        .popper_arrow:after { /* 使用伪元素的方式 */
            position: absolute;
            display: block;
            width: 0;
            height: 0;
            border-color: transparent;
            border-style: solid;
            content: " ";
            border-width: 10px;
            top: 1px;
            margin-left: -10px;
            border-top-width: 0;
            border-bottom-color: #fff;
            /* 三角形的绘制原来,其实就是不要宽高,用边框去绘制
                边框有4个边,其他三个边都transparent(透明)
                只让下边框显示,并且宽度10px,背景颜色白色,这样看起来的效果就是一个小三角形了
            */
        }
    </style>
</head>
<body>
    <div class="popDiv">
        <!-- 小三角形 -->
        <div class="popper_arrow"></div>
        <ul>
            <li>1、css绘制三角形</li>
            <li>2、弹窗阴影</li>
        </ul>
    </div>
</body>
</html>

相关文章

网友评论

      本文标题:css绘制外发光阴影和三角形

      本文链接:https://www.haomeiwen.com/subject/ikkyxrtx.html