美文网首页CSS3探索
绘制五角星和六角星

绘制五角星和六角星

作者: 钢笔先生 | 来源:发表于2020-01-31 21:45 被阅读0次

Time: 20200131

五角星

HTML

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>五角星</title>
    <link rel="stylesheet" href="style.css">
</head>
<body>
    <div id="star">
        
    </div>
</body>
</html>

CSS

/* 画向上的三角形然后顺时针旋转 */
#star {
    width: 0px;
    height: 0px;
    border-bottom: 70px solid red;
    border-left: 100px solid transparent;
    border-right: 100px solid transparent;
    /*使其居中*/margin: 150px auto;
    transform: rotate(35deg);
    -webkit-transform: rotate(35deg);
    -moz-transform: rotate(35deg);
    -ms-transform: rotate(35deg);
    -o-transform: rotate(35deg);
    position: relative; /*相对定位*/
}
/* 伪元素模拟一个层 */
#star::before {
    content: '';
    width: 0px;
    height: 0px;
    border-bottom: 80px solid red;
    border-left: 30px solid transparent;
    border-right: 30px solid transparent;
    transform: rotate(-35deg);
    -webkit-transform: rotate(-35deg);
    -moz-transform: rotate(-35deg);
    -ms-transform: rotate(-35deg);
    -o-transform: rotate(-35deg);
    position: absolute;
    /*相对于主元素是绝对定位*/
    left: -65px;
    top: -45px;
}

#star::after {
    content: '';
    width: 0px;
    height: 0px;
    border-bottom: 70px solid red;
    border-left: 100px solid transparent;
    border-right: 100px solid transparent;

    transform: rotate(-70deg);
    -webkit-transform: rotate(-70deg);
    -moz-transform: rotate(-70deg);
    -ms-transform: rotate(-70deg);
    -o-transform: rotate(-70deg);
    position: absolute;
    /*相对于主元素是绝对定位*/
    left: -105px;
    top: 3px;
}
截屏2020-01-31下午9.43.07.png

六角星

这个画起来就更容易,是两个三角形的组合,一个向上,一个向下。

HTML

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>六角星</title>
    <link rel="stylesheet" href="style.css">
</head>
<body>
    <div id="star"></div>
</body>
</html>

CSS

#star {
    width: 0px;
    height: 0px;
    margin: 150px auto;
    border-bottom: 100px solid red;
    border-left: 60px solid transparent;
    border-right: 60px solid transparent;
    position: relative;
}
#star::before {
    content: '';
    /*这个是必须要有的,否则无法显示*/
    width: 0px;
    height: 0px;
    border-bottom: 100px solid red;
    border-left: 60px solid transparent;
    border-right: 60px solid transparent;
    position: absolute;
    transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    top: 30px;
    left: -60px;
}

重点还是在于如何画三角形。

简单来说画三角形就是:

#star {
    width: 0px;
    height: 0px;
    margin: 150px auto;
    border-bottom: 100px solid red;
    border-left: 60px solid transparent;
    border-right: 60px solid transparent;
    position: relative;
}

这是上三角,则设置底部大小和颜色,左右两边大小和颜色为透明即可。

上部不设置则大小为0,设置的话设置大小为0px即可。

左右大,则顶角为钝角,反之是更小的锐角。

截屏2020-01-31下午9.39.46.png

END.

相关文章

  • 绘制五角星和六角星

    Time: 20200131 五角星 HTML CSS 六角星 这个画起来就更容易,是两个三角形的组合,一个向上,...

  • Python绘制分形树(一)

    一步一步了解turtle这个库,先绘制个五角星练手 画布 画笔控制命令: 运动命令: 五角星绘制 参考: http...

  • python绘制五角星

    python绘制五角星 分享一个使用Python绘制的五角星小案例,欢迎留言探讨指正,大佬勿喷,抱拳 下面呈上小代...

  • canvas效果案例:五角星

    参悟参悟,绘制一个属于你的五角星吧,结合之前知识点,完全可以绘制出一个标准的五角星效果: 开始摩拳擦掌 屡屡想法 ...

  • canvas-五角星

    参悟参悟,绘制一个属于你的五角星吧,结合之前知识点,完全可以绘制出一个标准的五角星效果: 开始摩拳擦掌 屡屡想法 ...

  • AI应用:绘制立体五角星

    先绘制出一个五角星 选择五角星,点击对象—>路径—>添加锚点,再复制出一层放在正下面 选择上层五角星每个顶点右边线...

  • canvas由浅入深(二):从三角形到五角星

    上一篇文章我们绘制了三角形,这一篇我们再绘制更复杂一些的吧, 五角星 仔细阅读代码你会发现,我们绘制五角星是从圆形...

  • 默写例程第002天

    五角星的绘制: from turtle import * #载入turtle库 fillcolor("red...

  • jQuery五角星评分(end方法)

    当鼠标移入空心五角星时,该五角星和其前面的五角星变成实心。鼠标离开时,所有五角星为空心。当鼠标点击某一空心五角星时...

  • 五角星绘制

    描述 使用turtle库绘制一个红色五角星图形,如下图所示: 注意:Mac OS平台填充效果与上述略有不同 输入 ...

网友评论

    本文标题:绘制五角星和六角星

    本文链接:https://www.haomeiwen.com/subject/emjnthtx.html