2010-03-23 50 views
2

我有一些UI元素,例如我的web應用程序中的按鈕。我打算使用CSS3的過渡來爲從一個背景圖像到另一個背景圖像的過渡設置動畫。我發現至少目前的轉換草案是不可能的。所以,我想知道使用Canvas作爲按鈕是否合理。我確信它可以處理事件,所以我在這裏看到沒有問題。有沒有?將HTML Canvas用於UI元素?

回答

0

我來的結論:使用用於UI元素的畫布不是一個好主意。

例如,如果使用Canvas創建選擇框,列表將如何出現在其他HTML元素的頂部?

0

除了在IE中不支持的事實,沒有。

0

畫布在Internet Explorer中不受支持。而且,在CPU數量很少的PC上,畫布動畫渲染速度非常緩慢。

除非你正在寫的東西是爲特定目標受衆(說內部用戶使用Firefox和雙核CPU),我想你應該避免使用帆布現在...

+0

你仍然可以通過http://excanvas.sourceforge.net/ – kodisha 2010-03-23 17:40:08

+0

在IE中獲得畫布。不同意。我用畫布編寫了自己的按鈕類,並且速度不慢。現在,canvas元素的最慢部分是fillRect()以清除畫布,如果按鈕的不同狀態都具有相同類型的alpha蒙版,則不需要清除。如果他不停地渲染按鈕,即使按鈕的狀態沒有改變,這也是它緩慢的原因。 – Warty 2010-03-24 19:16:00

+0

如果你問我,那真是太過分了。 – 2010-12-29 20:33:33

0

使用raphael.js(MIT許可證) - 它使用SVG(和VML for IE)爲您提供類似畫布的API,並可用於包括IE6在內的所有主流瀏覽器。並且它的速度很快(即使在IE中也不算太慢)