CSS 画动态圈

html-css016

CSS 画动态圈,第1张

<div class="container">

    <div class="light"></div>

</div>

<style>

    

    .container{

        border-radius: 50%

        background: #49b0fd

        width: 100px

        height: 100px

    }

    .light{

        width: 100px

        height: 100px

        box-shadow: 0 0 2px 2px rgba(0,0,0,1)

        border-radius: 50%

        transform-origin: center center

        position: relative

        animation: linear mymove 5s infinite

    }

    .light:after {

        position: absolute

        left: -5px

        top: 50%

        margin-top: -5px

        content: ""

        width: 10px

        height: 10px

        background: red

        border-radius: 20px

    }

    @keyframes mymove{

        from {transform:rotate(0deg)}

        to {transform:rotate(360deg)}

    }

</style>

老铁,看看这段,核心的样式写出来了,具体大小就由老铁自己去试着改啦。

几个注意点:1.两个容器最好一样大。2. 光点大小变了对应的 left和margin-top也要改。3.动画时间、动画缓动也可以改

一般情况下运用了左浮动,就会把列表前面的圈向左挤掉。。

比如:

<style type="text/css">

ul li{display:inline}

</style>

<ul>

<li>sdf</li>

<li>sdf</li>

<li>sdffds</li>

</ul>

这个事不会有圈的。。

<style type="text/css">

ul li{float:left}

</style>

<ul>

<li>sdf</li>

<li>sdf</li>

<li>sdffds</li>

</ul>

这个也不会有圈的,但是是一行。。。

<style type="text/css">

ul{display:inline}

</style>

<ul>

<li>sdf</li>

<li>sdf</li>

<li>sdffds</li>

</ul>

这个就没有效果了。。

<style type="text/css">

ul{float:left}

</style>

<ul>

<li>sdf</li>

<li>sdf</li>

<li>sdffds</li>

</ul>

这个就会把前面的去掉,但是是三行。。

1. 可以使用css的border-image属性设置边框的背景图片。2. 可以使用background设置多个背景图片,并分别设置每个背景的位置。3. 把所有图片先合成一个圆形图片,然后整个图片作为背景图片。