Ask for help, can you draw this background picture with css?

if you can Hua, how to draw, kneel and beg

clipboard.png


draw a rough one with canvas. There is some difference. You can change the specific effect by yourself

var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
var clg = ctx.createLinearGradient(0, 0, 0, -640);
ctx.fillStyle = "-sharpfc3";
ctx.fillRect(0, 0, 719, 1280);
ctx.strokeStyle = "transparent";
ctx.fillStyle = clg;
draw(23);
        
ctx.translate(360, 640);
ctx.fillStyle = "-sharpfc3";
ctx.beginPath();
ctx.arc(0, 0, 25, 0, 2 * Math.PI);
ctx.closePath();
ctx.stroke();
ctx.fill();
ctx.translate(-360, -640);
        
function draw(n) {
    for (var i = 0; i < n; i PP) {
        ctx.translate(360, 640);
        ctx.rotate(2 * Math.PI / n * i);
        clg.addColorStop(0.6, "-sharpff6");
        clg.addColorStop(0.9, "-sharpfc3");
        ctx.beginPath();
        ctx.moveTo(0, 0);
        ctx.lineTo(-50, -640);
        ctx.lineTo(50, -640);
        ctx.closePath();
        ctx.stroke();
        ctx.fill();
        ctx.rotate(-2 * Math.PI / n * i);
        ctx.translate(-360, -640);
    };    
};

this is troublesome to do with css. Generally, no one in the front end will use css to write, mostly using gif dynamic map


painting with canvas plus js, but there are compatibility problems


css radial gradient, you will know at a glance.


basic implementation (search the fan menu). All that's left is to adjust the parameters and deal with the details. I won't do it

.
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Light</title>
    <style type="text/css">
    .frame {position:relative;margin:200px;width:200px;height:400px;box-shadow:0 0 0 1px -sharpF00 inset;overflow:hidden;}
    .frame .p {position:absolute;display:none;width:200px;height:200px;top:200px;left:100px;background-color:rgba(255,196,196,0.5);transform-origin:left top}
    .frame .p:nth-child(2n+1) {background-color:rgba(196,196,255,0.5);}
    .frame .p00 {display:block;transform:rotate(0deg) skew(60deg);}
    .frame .p01 {display:block;transform:rotate(30deg) skew(60deg);}
    .frame .p02 {display:block;transform:rotate(60deg) skew(60deg);}
    .frame .p03 {display:block;transform:rotate(90deg) skew(60deg);}
    .frame .p04 {display:block;transform:rotate(120deg) skew(60deg);}
    .frame .p05 {display:block;transform:rotate(150deg) skew(60deg);}
    .frame .p06 {display:block;transform:rotate(180deg) skew(60deg);}
    .frame .p07 {display:block;transform:rotate(210deg) skew(60deg);}
    .frame .p08 {display:block;transform:rotate(240deg) skew(60deg);}
    .frame .p09 {display:block;transform:rotate(270deg) skew(60deg);}
    .frame .p10 {display:block;transform:rotate(300deg) skew(60deg);}
    .frame .p11 {display:block;transform:rotate(330deg) skew(60deg);}
    </style>
</head>
<body>
<div class="frame">
    <div class="p p00"></div>
    <div class="p p01"></div>
    <div class="p p02"></div>
    <div class="p p03"></div>
    <div class="p p04"></div>
    <div class="p p05"></div>
    <div class="p p06"></div>
    <div class="p p07"></div>
    <div class="p p08"></div>
    <div class="p p09"></div>
    <div class="p p10"></div>
    <div class="p p11"></div>
</div>
</body>
</html>
Menu