做一个有天有地的css及html画的旋转阴阳鱼

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>天地阴阳</title>
    <style>
        /* 重置默认样式 */
        * {
            padding: 0;
            margin: 0;
            box-sizing: border-box;
        }

        /* 基础布局 */
        html, body {
            height: 100%;
        }

        .container {
            height: 100%;
            display: flex;
            flex-direction: column;
            position: relative;
        }

        /* 天地背景 */
        .sky {
            flex: 1;
            background: linear-gradient(to bottom, #87CEEB, #E0F6FF);
        }

        .earth {
            height: 50%;
            background: linear-gradient(to bottom, #90EE90, #228B22);
        }

        /* 八卦图主容器 */
        .box {
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
            width: 300px;
            height: 300px;
            border-radius: 50%;
            box-shadow: 0 0 30px rgba(0, 0, 0, 0.3);
            animation: rotate 8s linear infinite;
            transform-origin: center center;
            backdrop-filter: blur(5px);
            /* 移除重复的样式定义和背景色 */
        }

        /* 阴阳鱼左右半圆 */
        .semi-circle {
            position: absolute;
            height: 100%;
            width: 50%;
        }

        .left {
            left: 0;
            background: #000;
            border-radius: 150px 0 0 150px;
            width: 50%;
        }

        .right {
            right: 0;
            background: #fff;
            border-radius: 0 150px 150px 0;
            width: 50%;
        }

        /* 在box容器中添加背景色 */
        .box {
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
            width: 300px;
            height: 300px;
            border-radius: 50%;
            box-shadow: 0 0 30px rgba(0, 0, 0, 0.3);
            animation: rotate 8s linear infinite;
            transform-origin: center center;
            backdrop-filter: blur(5px);
            background: rgba(255, 255, 255, 0.8);  /* 添加背景色 */
        }

        /* 阴阳鱼大圆 */
        .circle {
            position: absolute;
            left: 25%;
            width: 50%;
            height: 50%;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .top-circle {
            top: 0;
            background: #000;  /* 改为纯黑色 */
        }

        .bottom-circle {
            bottom: 0;
            background: #fff;  /* 改为纯白色 */
        }

        /* 阴阳眼 */
        .small-circle {
            width: 30px;
            height: 30px;
            border-radius: 50%;
        }

        .white { background: #fff; }  /* 改为纯白色 */
        .black { background: #000; }  /* 改为纯黑色 */

        /* 旋转动画 */
        @keyframes rotate {
            from { transform: translate(-50%, -50%) rotate(0deg); }
            to { transform: translate(-50%, -50%) rotate(360deg); }
        }

        /* 悬停效果 */
        .box:hover {
            animation-play-state: paused;
            box-shadow: 0 0 40px rgba(0, 0, 0, 0.4);
        }
    </style>
</head>
<body>
    <div class="container">
        <div class="sky"></div>
        <div class="earth"></div>
        <div class="box">
            <div class="semi-circle left"></div>
            <div class="semi-circle right"></div>
            <div class="circle top-circle">
                <span class="small-circle white"></span>
            </div>
            <div class="circle bottom-circle">
                <span class="small-circle black"></span>
            </div>
        </div>
    </div>
</body>
</html>
相关推荐
小菜全6 分钟前
Vue 3 + TypeScript 事件触发与数据绑定方法
前端·javascript·vue.js
Hilaku10 分钟前
面试官开始问我AI了,前端的危机真的来了吗?
前端·javascript·面试
zheshiyangyang20 分钟前
TypeScript学习【一】
javascript·学习·typescript
β添砖java1 小时前
案例二:登高千古第一绝句
前端·javascript·css
TNTLWT1 小时前
单例模式(C++)
javascript·c++·单例模式
落日沉溺于海2 小时前
React From表单使用Formik和yup进行校验
开发语言·前端·javascript
知识分享小能手2 小时前
React学习教程,从入门到精通, React 新创建组件语法知识点及案例代码(11)
前端·javascript·学习·react.js·架构·前端框架·react
an__ya__2 小时前
Vue数据响应式reactive
前端·javascript·vue.js
华仔啊2 小时前
面试都被问懵了?CSS 的 flex:1 和 flex:auto 真不是一回事!90%的人都搞错了
前端·javascript
前端康师傅2 小时前
JavaScript 函数详解
前端·javascript