2016-10-04 135 views

回答

3

SVG(可縮放矢量圖形)和HTML Canvas是兩種獨立的技術。 SVG是一種基於XML和可寫的HTML代碼中的一組特定的標籤:

<svg width="400" height="110"> 
    <rect width="300" height="100" style="fill:rgb(128,128,255);stroke-width:3;stroke:rgb(0,0,255)" /> 
</svg> 

HTML Canvas是隻是用JavaScript創建的圖形畫布:

<canvas id="myCanvas" width="200" height="100" 
style="border:1px solid #c3c3c3;"> 
Your browser does not support the canvas element. 
</canvas> 

<script> 
var canvas = document.getElementById("myCanvas"); 
var ctx = canvas.getContext("2d"); 
ctx.fillStyle = "#FF0000"; 
ctx.fillRect(0,0,150,75); 
</script> 

這是動作: http://codepen.io/1GR3/pen/ZpaPJR

+0

但是你可以在畫布上繪製SVG和SVG的追加畫布(請注意,你可以不追加到畫上一個SVG畫布上繪製一個畫布,以下?) – Kaiido

+0

哦,男人,太多的遞歸! O_0 – 1GR3

0

這在SVG中很容易實現。

.myrect { 
 
    fill: red; 
 
} 
 

 
.myrect:hover { 
 
    fill: green; 
 
}
<svg width="300" height="200"> 
 
    <rect class="myrect" x="10" y="10" width="280" height="180" rx="40" ry="40"/> 
 
</svg>