美文网首页
Css - 画同心圆

Css - 画同心圆

作者: ElricTang | 来源:发表于2019-10-09 22:02 被阅读0次

    如何使用 HTML + CSS画同心圆 ?

    方案一:使用border-radius绘制圆形,通过定位或margin的方法设置位置。(有多少个圆就需要多少个div)

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <style>
                .circle:nth-child(1){
                    width:50px;
                    height:50px;
                    border-radius: 50%;
                    border: 1px solid red;
                    position: absolute;
                    top:75px;
                    left:75px;
                }
                .circle:nth-child(2){
                    width: 100px;
                    height: 100px;
                    border-radius: 50%;
                    border: 1px solid green;
                    position: absolute;
                    top:50px;
                    left:50px;
                }
                .circle:nth-child(3){
                    width: 200px;
                    height: 200px;
                    border-radius: 50%;
                    border: 1px solid yellow;
                    position: absolute;
                    top:0;
                    left:0;
                }
            </style>
        </head>
        <body>
            <div class="circle"></div>
            <div class="circle"></div>
            <div class="circle"></div>
        </body>
    </html>
    

    方案二:添加伪元素(局限:一个div只能添加两个同心圆)

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <style> 
                *{
                    margin:0;
                    padding:0;
                }           
                .circle {
                    width: 100px;
                    height: 100px;
                    border-radius: 50%;
                    margin: 110px 110px;
                    border: 1px solid red;
                }
                .circle::before {
                    content: '';
                    width: 120px;
                    height: 120px;
                    border-radius: 50%;
                    position: absolute;
                    top: 100px;
                    left: 100px;
                    border: 1px solid green;
                }
                .circle::after {
                    content: '';
                    width: 80px;
                    height: 80px;
                    border-radius: 50%;
                    position: absolute;
                    top: 120px;
                    left: 120px;
                    border: 1px solid yellow;
                }
            </style>
        </head>
        <body>
            <div class="circle"></div>
        </body>
    </html>
    

    方案三:使用box-shadow(只需要一个div就可以画很多圆)

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <style>            
                .circle {
                    width: 100px;
                    height: 100px;
                    border-radius: 50%;
                    margin:100px;
                    box-shadow: 0 0 0 5px red,0 0 0 10px green,0 0 0 20px yellow;
                }
            </style>
        </head>
        <body>
            <div class="circle"></div>
        </body>
    </html>
    

    方案四:使用Css3背景渐变(Gradients),同样只需要一个div

    • 径向渐变
      background: radial-gradient(circle,red,green,blue,yellow,black);
    • 重复径向渐变
      background: repeating-radial-gradient(red, yellow 10%, green 15%);
     <!DOCTYPE html>
    <html>
        <head>
            <meta charset="UTF-8">
            <title></title>
            <style>            
                .circle {
                  width: 100px;
                  height: 100px;
                  border-radius: 50%;
                  margin:100px;
                  background: repeating-radial-gradient(red, yellow 10%, green 15%);
                }
            </style>
        </head>
        <body>
            <div class="circle"></div>
        </body>
    </html>
    

    相关文章

      网友评论

          本文标题:Css - 画同心圆

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