One of the major disadvantages of Flash is its lack of resizability. It would be nice if, when developers start switching over to the HTML5 Canvas, they at the same time start paying attention to scaleability.
Unfortunately all the Canvas tutorials I have seen so far are stuck firmly in the bad old days of fixed pixel sizes. I have even encountered one site that said point-blank that if you want resizeability you will have to use SVG. Rubbish!
Resizeability is certainly achievable, although you do need to make some effort. I've made a small demo here. So far I have spent very little time on Canvas, so the demo is very unambitious, but hopefully makes the point. The canvas resizes to fit whatever window it finds itself in (within given minimum and maximum sizes, which are themselves easily adjustable). Try resizing the window.
There are two scripts, one containing the scaling routines themselves and the other contains the demo, which makes use of the scaling routines. I'm not going to describe the code in detail – it's pretty straightforward for anyone who knows enough Javascript to consider doing things with Canvas – but here are a few of the main features.
Other features: the page includes a check for Canvas support in the Canvas element (try it in IE 7 or 8). Within that check is a check for disabled Javascript.
If desired a maximum and minimum canvas size can be defined; this is done in the CSS which defines the element which the Canvas follows - in this case the header element.