This article has been migrated from f3 Internet, with permission.
Chances are you’re already familiar with the term “progressive enhancement” (AKA “graceful degradation”). If not, see the section called what is progressive enhancement at the end of this article.
REST requires that different operations use different HTTP request methods, depending on the nature of the operation. If you’re getting information it’d be a GET request, if you’re creating something it’d be POST, then PUT for updating and DELETE for removing.
The problem is that web browsers don’t currently support all of these methods. A normal link on a web page does a GET request, a form can do a GET or a POST. That’s it.
< % or
< %= wherever they occur):
One alternative would be to style the form button to look like a link, using something like XDressed Clickables. I chose not to do this for two reasons:
- It relies on CSS, which may not be supported.
- Styling forms is notoriously difficult and likely to be hard to maintain for multiple browsers that change over time.
What is progressive enhancement?
The point is that with all the wonderful tools at our disposal, there is no reason not to start from scratch and build up an interface that is usable and accessible – the cost being negligible next to the benefit. Don’t take my word for it, just search for it.
By the way, “graceful degradation” is a term synonymous with “progressive enhancement” – they’re both sides of the same shiny coin.
Posted by Stephan on 11/09/2009.