Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>No.</p> <p>Remember the early 2000's? When everyone thought it would be cool to have a race to invent the most nauseating website navigation possible using Flash?</p> <p>Let's not do that again.</p> <p>It is okay to have <em>some</em> UI elements that are prettified by canvas, but remember that these elements won't be accessible to web crawlers (like Google), or to users who have scripts disabled, etc.</p> <p>It is also worth noting that the HTML Canvas Spec has a section where they <a href="http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#best-practices" rel="noreferrer">strongly advise against trying to create text-editing controls in Canvas.</a></p> <blockquote> <p>I know for sure that there will be a lot of drawbacks, but what would the possible advantages of such be?</p> </blockquote> <p>There are a lot of pretty elements you can add to a page with Canvas. Some things can get really beautiful without being intrusive or altering the page navigation in any way. Perhaps the logo of a website would "grow" procedurally or glow or otherwise get more complex. Other background animation effects might be really neat.</p> <p>There are also interactive images, like on sites where you want a diagram or breakdown or exploded view that you would navigate to inspect the various parts of something (a chemical structure, a biological organism, a new car). Visual interactive media such as diagramming and games are some of the best use-cases for Canvas.</p> <p>In terms of accenting the UI of the page, the page ought to also work perfectly if the Canvas elements of it were not there.</p> <p>But replace buttons? Replace text fields? Replace lists? Absolutely not. Those should never be the domain of Canvas.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload