如何用css3在span上画两个圆

html-css08

如何用css3在span上画两个圆,第1张

<!DOCTYPE html>

<html>

<head>

<title>circle</title>

<style>

* {

margin:0px

}

</style>

</head>

<body>

<span>

<canvas id="Canvas" width="200" height="100" style="border:1px solid #000000"></canvas>

</span>

<script>

var c = document.getElementById("Canvas")

var ctx = c.getContext("2d")

ctx.beginPath()

ctx.arc(55, 40, 40, 0, 2 * Math.PI)

//x,y,r,2π

ctx.stroke()

ctx.beginPath()

ctx.arc(155, 40, 40, 0, 2 * Math.PI)

//x,y,r,2π

ctx.stroke()

</script>

</body>

</html>

<style>

.box{

width: 100px

height: 50px

}

.top{

background: #000

border-radius: 50px 50px 0 0/* 左上、右上、右下、左下 */

}

.bottom{

background: #0fa

border-radius: 0 0 50px 50px/* 左上、右上、右下、左下 */

}

</style>

<body>

<div class="box top"></div>

<div class="box bottom"></div>

</body>

1、用css画一个圆形

.disc1{

    width: 100px

    height: 100px

    border:1px solid red

    background-color: red

    margin:300px 0px 0px 300px

    border-radius:100%

    float:left

}

2、由于爱心是由两个圆和一个正方形组成的,所以还需要再来一个圆形

.disc2{

    width: 100px

    height: 100px

    border:1px solid red

    background-color: red

    margin:250px 0px 0px 0px

    border-radius:100%

    float:left

    position: relative

    right: 50px

}

3、心型下方就需要做一个正方形

.square{

    width: 100px

    height: 100px

    border:1px solid red

    background-color: red

    margin: 300px 0px 0px 0px

    float: left

    position: relative

    right: 152px

}

4、做完这些的效果已经基本上出来了,但是还需要调整一下爱心的角度,这时就需要用到css样式中的transform中的rotate属性了。

由于需要把三个div都旋转角度,所以把这三个div放在一个div里面。具体代码如下:

.main{

transform: rotate(45deg)

margin: 300px

}

全部代码如下

<!DOCTYPE html>

<html>

    <head>

        <meta charset="utf-8" />

        <title></title>

<style type="text/css">

*{

    margin: 0px

    padding: 0px

}

.main{

    transform: rotate(45deg)

    margin: 300px

}

.disc1{

    width: 100px

    height: 100px

    border:1px solid red

    background-color: red

    margin:300px 0px 0px 300px

    border-radius:100%

    float:left

}

.disc2{

    width: 100px

    height: 100px

    border:1px solid red

    background-color: red

    margin:250px 0px 0px 0px

    border-radius:100%

    float:left

    position: relative

    right: 50px

}

.square{

    width: 100px

    height: 100px

    border:1px solid red

    background-color: red

    margin: 300px 0px 0px 0px

    float: left

    position: relative

    right: 152px

}

</style>

    </head>

    <body>

        <div class="main">

            <div class="disc1"></div>

            <div class="disc2"></div>

            <div class="square"></div>

        </div>

    </body>

</html>