• 前端图形:SVG与Canvas


    image

    00、前端图形

    前端代码实现图形的几种方式:CSS、SVG、Canvas(主要是JavaScript编码)

    CSS也是可以画图的,需要借助于高宽、边框borderclip-path裁剪、渐变色背景等属性来模拟实现各种图形,当然只能实现一些简单的图形。

    border:用四条边框样式属性的各种组合变换,实现一些简单的图形。网上也有画一些稍微复杂的图形,如哆啦A梦,但代码量稍多,可读性不好,并不推荐。

    <div class="gcss">
    <p class="border">borderp>
    <p class="rborder">圆角按钮p>
    <p class="radio">p>radio
    <p class="triangle1">p>三角形
    <p class="triangle2">p>三角形
    div>
    <style>
    .gcss p {
    display: inline-block;
    text-align: center; vertical-align: middle;
    }
    .border {
    border: 30px solid;
    border-color: aqua tan violet peru;
    border-radius: 20px;
    }
    .rborder {
    background-color: #b1ccf3;
    width: 100px; height: 40px; line-height: 40px;
    border-radius: 20px;
    }
    .radio {
    width: 40px; height: 40px;
    border-radius: 50%;
    border: 10px solid;
    }
    .triangle1 {
    border: 50px solid #0001;
    border-left-color: red;
    }
    .triangle2 {
    border-left: 50px solid #0001;
    border-right: 50px solid #0001;
    border-bottom: 50px solid red;
    }
    style>

    image.png


    01、< svg>矢量图形

    可缩放矢量图形(Scalable Vector Graphics,SVG),是一种基于 XML(数学)描述的二维的矢量图形,内容可以直接插入网页,成为DOM的一部分,然后用 JavaScript 和 CSS 进行操作。SVG 内容也可以写在一个独立文件中,然后用CSS(background-url)、