Thanks for the suggestion. I looked at Siverlight a while ago and decided to wait. I just looked again, and again I will wait.
I don't want animated buttons. If I did I could always use Flash. However I abandonned Flash a couple years ago - not because I wanted more but because I wanted less.
A large proportion of the sites on http://www.webpagesthatsuck.com/
are Flash powered sites. Flash effects on a web page are generally annoying. To the extent that Silverlight is a just an improved paradigm for Flash type effects, to that that extent Silverlight is a mistake. The world needs fewer Flash effects not more. A rollover should be subtle, almost subliminal. You don't want little movies on each page element distracting the user.
My point was that a basic button should be easy and routine. A basic button should:
- Look like a physical button - that is to say it should have a bit of trompe d'oeil verisimilitude
- It should have a rollover - a button is an active element. A subtle rollover effect helps the user identify the function
- I should have a down reaction when pushed
- I should have a click
- The Button
- The Link Button
- The Image Button
The ASP.NET Button is the closest to what I defined as a basic button. It is easy to make a graphical template button and use a little CSS with the standard button. Then the Text property of a button instance is all that has to be changed for each new button.
With separate graphic images it is possible to use better graphical text. This allows you to have drop shadows. Drop shadows usually improve readability. Still this is a lot of extra work.
Microsoft has a technology that allows drop shadows as a text decoration. As I remember it only renders in IE - but who cares?
All I asked for was that the standard ASP.NET button support rollovers and drop shadowed text as simple object properties. This would solve 99% of all button issues. For the other 1% - let them use Flash or Silverlight.