canvas和svg

canvas和svg都是html5中新增的属性,都允许在浏览器中创建图形,但他们的实现原理是不同的;

svg使用XML来描述2D图形

svg基于XML,这意味着svg中的每个元素都是可用的,可以为某个元素添加JavaScript事件处理器
在svg中,每个被绘制的图形都被视为一个对象,如果svg对象的属性发生变化,浏览器会自动重现图形

canvas使用JavaScript来绘制2D图形

canvas是逐像素进行渲染的,在canvas中,一旦图形被绘制出来,它就不会再继续得到浏览器的关注。