太极图可以理解为一个一半黑一半白的半圆,上面放置着两个圆形,一个黑色边框白色芯,一个白色边框黑色芯。

1、实现黑白各半的圆形。

    .box{
width:200px;height:200px; border-radius:50%;
background:linear-gradient(90deg,black 50%,white 50%);
margin:50px auto;position:relative;
}

 2、用:before伪类实现一个黑色边框白色芯的园。

.box:before{
content:" ";
position:absolute;
width:0px;height:0px;
padding:25px;
border:25px solid black;
border-radius: 50%;
background:white;
left:50px;
}

3、用:after伪类实现一个白色边框黑色芯的圆。

.box:after{
content:" ";
width:0px;height:0px;
padding:25px;
border:25px solid white;
border-radius: 50%;
background:black;
position: absolute;
left:50px;top:100px;
}


CSS实现旋转太极图

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>太极图</title>
<style>
*{
margin:0;padding:0;
}
body{
background: #eee
}
.box{
width:200px;height:200px;
border-radius:50%;
background: linear-gradient(90deg,black 50%,white 50%);
margin:50px auto;
position:relative;
animation: tj 3s infinite linear ;}
.box:before{
content:" ";
position:absolute;
width:0px;
height:0px;
padding:25px;
border:25px solid black;
border-radius: 50%;
background:white;
left:50px;
}
.box:after{
content:" ";
width:0px;height:0px;
padding:25px;
border:25px solid white;
border-radius: 50%;
background:black;
position: absolute;
left:50px;top:100px;
}
@keyframes tj{
from {transform:rotate(0deg);}
to{transform:rotate(360deg);}
}
</style>
</head>
<body>
<div class="box"></div>
</body>
</html>

JS实现旋转太极图(鼠标悬停转动,移开停止旋转效果)

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>太极图</title>
<style>
*{
padding: 0;
margin: 0;
}
body{
background: #eee
}
.tjt{
width:200px;height:200px;
border-radius:50%;
background: linear-gradient(90deg,black 50%,white 50%);
margin:50px auto;
position:relative;
}
.tjt:before{
content:" ";
position:absolute;
width:0px;
height:0px;
padding:25px;
border:25px solid black;
border-radius: 50%;
background:white;
left:50px;
}
.tjt:after{
content:" ";
width:0px;height:0px;
padding:25px;
border:25px solid white;
border-radius: 50%;
background:black;
position: absolute;
left:50px;top:100px;
}
</style>
</head>
<body>
<div id="tj" class="tjt" onmouseover="xz()" onmouseout="clearInterval(zh)"></div>
<script>
var x=0;
var zh;
function xz(){
clearInterval(zh)
zh=setInterval(function(){
x=x+1;
document.getElementById("tj").style.transform='rotate(' + x + 'deg)';
},10)
}
</script>
</body>
</html>

CSS3制作太极图以及用JS实现旋转太极图的更多相关文章

  1. css3制作旋转动画

    现在的css3真是强大,之前很多动画都是用jq来实现,但是css3制作的动画要比jq实现起来简单很多,今天呢,我自己也写了一个css旋转动画和大家分享.效果如下面的图片 思路:1.制作之前呢,我们先来 ...

  2. 网页特效:用CSS3制作3D图片立方体旋转特效

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  3. 用css3制作旋转加载动画的几种方法

    以WebKit为核心的浏览器,例如Safari和Chrome,对html5有着很好的支持,在移动平台中这两个浏览器对应的就是IOS和Android.最近在开发一个移动平台的web app,那么就有机会 ...

  4. 用CSS3制作的旋转六面体动画

    这是用CSS3制作的旋转的六面体 请用火狐或谷歌浏览器预览,有些旋转角度做的不够好,请大神指教 top bottom left right front back

  5. CSS3制作旋转导航

    慕课网学习CSS3时,遇到个习题,觉得有必要总结学习下:CSS3制作旋转导航 慕课网习题地址:http://www.imooc.com/code/1883 示例及源码地址:http://codepen ...

  6. 基于CSS3伪元素和动画绘制旋转太极图

    通过CSS3的动画知识来完成一个旋转的太极. 任务 1.创建一个div,用CSS控制其大小.边框.位置等,做成一个静态的圆形,一半为红色一半为白色. 2.用div的伪元素位置两个圆环并放置核实位置,使 ...

  7. 解惑:如何使用html+css+js实现旋转相册,立方体相册等动画效果

    解惑:如何使用html+css+js实现旋转相册,立方体相册等动画效果 一.前言 最初还是在抖音上看到可以使用简单地代码实现炫酷的网页效果的,但是想要找到可以运行的代码还是比较困难的,最近突然想起就在 ...

  8. 图解CSS3制作圆环形进度条的实例教程

    圆环形进度条制作的基本思想还是画出基本的弧线图形,然后CSS3中我们可以控制其旋转来串联基本图形,制造出部分消失的效果,下面就来带大家学习图解CSS3制作圆环形进度条的实例教程 首先,当有人说你能不能 ...

  9. 详解用CSS3制作圆形滚动进度条动画效果

    主  题 今天手把手教大家用CSS3制作圆形滚动进度条动画,想不会都难!那么,到底是什么东东呢?先不急,之前我分享了一个css实现进度条效果的博客<CSS实现进度条和订单进度条>,但是呢, ...

随机推荐

  1. eclipse code recommenders cannot download its model repository index

    Cent OS 7 运行 eclipse oxygen 代码提示出现标题所示的错误,解决办法,将网络提供程序设置为手动即可解决. Window->Preference->General-& ...

  2. ARTS-1

    ARTS的初衷 Algorithm:主要是为了编程训练和学习.每周至少做一个 leetcode 的算法题(先从Easy开始,然后再Medium,最后才Hard).进行编程训练,如果不训练你看再多的算法 ...

  3. 2.proxychains----Macchanger----anonsurf

    nano /etc/proxychains.conf 激活dynamic_chain 同是启用proxy_dns 只启用IP会泄露DNS位置信息,别人就知道你在用匿名 ipconfig    ifco ...

  4. 【COSMOS】跨链协议IBC概述

    一.什么是IBC? IBC是链间通信协议的缩写(Inter-Blockchain Communication Protocol).通过数据包交换在多个不同的区块链网络之间转移数据和状态信息.最初的用途 ...

  5. js面向过程-拖拽

    1.步骤分析: 1.1 获取id 1.2 当鼠标点击时执行的js 1.3当鼠标移动时执行的js 1.4当鼠标放开时执行的js 2.代码实现 <!DOCTYPE html> <html ...

  6. ELK7.X中配置x-pack

    ELK7.X中配置x-pack 1.X-Pack简介 X-Pack是一个Elastic Stack的扩展,将安全,警报,监视,报告和图形功能包含在一个易于安装的软件包中.虽然elasticsearch ...

  7. os.path.sep

    python中os.path常用模块 os.path.sep:路径分隔符      linux下就用这个了’/’ os.path.altsep: 根目录 os.path.curdir:当前目录 os. ...

  8. 2017 BJ ICPC 石子合并变种 向量基本功及分类考察

    E 模拟 #include <bits/stdc++.h> #define PI acos(-1.0) #define mem(a,b) memset((a),b,sizeof(a)) # ...

  9. 复试笔试复习 & bd面试总结

    计算机网络: 1.OSI模型中提供端到端服务的是传输层 2.波特率的含义是每秒钟信号变化的次数 3.非屏蔽双绞线中5类网线的数据速率为100Mbps,连接器是RJ-45 4.虚电路在数据链路层实现,电 ...

  10. CSP2019 题解

    CSP2019 题解 D1T1 格雷码(code) 题目传送门 https://loj.ac/problem/3208 题解 按照题意模拟就可以了. 对于第 \(i\) 位,如果 \(k \geq 2 ...