当前位置: 首页 > article >正文

绘制三角形、正六边形、五角星、六角星

<!DOCTYPE html>
<html lang="zh-CN">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>绘制图形</title>
    <style>
        body {
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
            margin: 0;
        }

        /* 三角形 */
        .single-triangle {
            width: 0;
            height: 0;
            border-left: 50px solid transparent;
            /* 调整长度可以改变三角形的宽度 */
            border-right: 50px solid transparent;
            /* 调整长度可以改变三角形的宽度 */
            border-bottom: 100px solid blue;
            /* 调整长度可以改变三角形的高度 */
            margin-right: 120px;
            /* 在三角形右侧添加间距 */
        }

        /* 正六边形 */
        .hexagon-container {
            position: relative;
            width: 100px;
            height: 100px;
        }

        .hexagon-triangle {
            width: 0;
            height: 0;
            border-left: 50px solid transparent;
            border-right: 50px solid transparent;
            border-bottom: 86.6px solid blue;
            /* 50 * sqrt(3) */
            position: absolute;
            bottom: 0;
            transform-origin: 0 100%;
        }

        .hexagon-triangle:nth-child(1) {
            transform: rotate(0deg);
            border-bottom-color: red;
        }

        .hexagon-triangle:nth-child(2) {
            transform: rotate(60deg);
            border-bottom-color: orange;
        }

        .hexagon-triangle:nth-child(3) {
            transform: rotate(120deg);
            border-bottom-color: yellow;
        }

        .hexagon-triangle:nth-child(4) {
            transform: rotate(180deg);
            border-bottom-color: green;
        }

        .hexagon-triangle:nth-child(5) {
            transform: rotate(240deg);
            border-bottom-color: blue;
        }

        .hexagon-triangle:nth-child(6) {
            transform: rotate(300deg);
            border-bottom-color: purple;
        }

        h2 {
            margin-right: 100px;
        }

        /* 六角星 */
        .shape-holder {
            position: relative;
            width: 100px;
            height: 57.7px;
            /* 100 * sqrt(3) / 2 */
            margin-left: 30px;
        }

        .triangle-part {
            width: 0;
            height: 0;
            border-left: 50px solid transparent;
            border-right: 50px solid transparent;
            border-bottom: 93.3px solid blue;
            /* 100 * sqrt(3) */
            position: absolute;
            bottom: 0;
            transform-origin: 50% 100%;
        }

        .triangle-part:nth-child(1) {
            transform: rotate(0deg);
            /* border-bottom-color: red; */
        }

        .triangle-part:nth-child(2) {
            transform: rotate(60deg);
            /* border-bottom-color: orange; */
        }

        .triangle-part:nth-child(3) {
            transform: rotate(120deg);
            /* border-bottom-color: yellow; */
        }

        .triangle-part:nth-child(4) {
            transform: rotate(180deg);
            /* border-bottom-color: green; */
        }

        .triangle-part:nth-child(5) {
            transform: rotate(240deg);
            /* border-bottom-color: blue; */
        }

        .triangle-part:nth-child(6) {
            transform: rotate(300deg);
            /* border-bottom-color: purple; */
        }
    </style>
</head>

<body>
    <h1>三角形</h1>
    <div class="single-triangle"></div>
    <h2>正六边形</h2>
    <div class="hexagon-container">
        <div class="hexagon-triangle"></div>
        <div class="hexagon-triangle"></div>
        <div class="hexagon-triangle"></div>
        <div class="hexagon-triangle"></div>
        <div class="hexagon-triangle"></div>
        <div class="hexagon-triangle"></div>
    </div>
    <h1>五角星</h1>
    <svg width="100" height="100" viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg">
        <polygon points="100,10 40,198 190,78 10,78 160,198" style="fill:red;stroke:red;stroke-width:1" />
    </svg>
    <h1>六角星</h1>
    <div class="shape-holder">
        <div class="triangle-part"></div>
        <div class="triangle-part"></div>
        <div class="triangle-part"></div>
        <div class="triangle-part"></div>
        <div class="triangle-part"></div>
        <div class="triangle-part"></div>
    </div>
    <script>
        // 错误处理:确保浏览器支持 CSS transform
        if (!('transform' in document.body.style)) {
            alert('您的浏览器不支持 CSS transform,无法正常显示效果。');
        }
    </script>
</body>

</html>


http://www.kler.cn/a/500547.html

相关文章:

  • 【Ubuntu与Linux操作系统:一、Ubuntu安装与基本使用】
  • 2025-1-9 QT 使用 QXlsx库 读取 .xlsx 文件 —— 导入 QXlsx库以及读取 .xlsx 的源码 实践出真知,你我共勉
  • USRP X310 Windows 烧录镜像
  • 【C++】拷贝构造函数与运算符重载
  • 【Bluedroid】HFP连接流程源码分析(一)
  • 基于ResNet的CIFAR-10分类实现与分析
  • django基于Python的校园个人闲置物品换购平台
  • Android Framework WMS全面概述和知识要点
  • 浅谈云计算03 | 云计算的技术支撑(云使能技术)
  • 基于华为ENSP的OSPF-开放式最短路径优先协议保姆级别详解(1)
  • JAVA 嵌套列表初始化和转字符串
  • 十大排序简介
  • 新冠肺炎服务预约微信小程序的设计与实现ssm+论文源码调试讲解
  • 【Unity精品插件】Love/Hate:专注于 AI 行为与情感互动
  • 1F1B 非交错式调度模式与 GPipe 策略的内存节省优势
  • 【CSS】HTML页面定位CSS - position 属性 relative 、absolute、fixed 、sticky
  • 用JSONEncoder解决Object of type Color is not JSON serializable报错
  • 【数据结构-堆】2233. K 次增加后的最大乘积
  • 【python】str.upper()、str.join()、stri.strip()用法
  • Java 项目中引入阿里云 OSS SDK
  • Pytorch使用手册-优化 Vision Transformer 模型以用于部署(专题十六)
  • ADB->查看进程并强杀进程