Meta refresh: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Made example meta tags valid xhtml
→‎Usability: small copyedit
Line 3: Line 3:


==Usability==
==Usability==
Use of meta refresh is discouraged by the [[World Wide Web Consortium|W3C]], since unexpected refresh can disorient users<ref>[http://www.w3.org/TR/WCAG10-CORE-TECHS/#auto-page-refresh Core Techniques for Web Content Accessibility Guidelines 1.0] - W3C Note 6 November 2000</ref>. Meta refresh also impairs the web browser's "back" button in some browsers (including [[Internet Explorer]] 6 and before), although most modern browsers compensate for this ([[Internet Explorer 7]] and higher, [[Mozilla Firefox]], [[Opera (web browser)|Opera]]).
Use of meta refresh is discouraged by the [[World Wide Web Consortium]] (W3C), since unexpected refresh can disorient users<ref>[http://www.w3.org/TR/WCAG10-CORE-TECHS/#auto-page-refresh Core Techniques for Web Content Accessibility Guidelines 1.0] - W3C Note 6 November 2000</ref>. Meta refresh also impairs the web browser's "back" button in some browsers (including [[Internet Explorer 6]] and before), although most modern browsers compensate for this ([[Internet Explorer 7]] and higher, [[Mozilla Firefox]], [[Opera (web browser)|Opera]]).


There are legitimate uses of meta-refresh, such as providing updates to dynamic web pages or implementing site controlled navigation of a website without javascript. Many large websites use it to refresh news or status updates, especially when dependencies on javascript and redirect headers are unwanted.
There are legitimate uses of meta-refresh, such as providing updates to dynamic web pages or implementing site controlled navigation of a website without [[JavaScript]]. Many large websites use it to refresh news or status updates, especially when dependencies on JavaScript and redirect headers are unwanted.


Alternatives to meta refresh include [[JavaScript]], or [[URL redirection|HTTP redirection]] headers such as [[HTTP 301]].
Alternatives to meta refresh include JavaScript and [[URL redirection|HTTP redirection]] headers such as [[HTTP 301]].


==Examples==
==Examples==

Revision as of 23:57, 20 February 2011

Meta refresh is a discouraged method of instructing a web browser to automatically refresh the current web page or frame after a given time interval, using an HTML meta element with the http-equiv parameter set to "refresh" and a content parameter giving the time interval in seconds. It is also possible to instruct the browser to fetch a different URL when the page is refreshed, by including the alternative URL in the content parameter. By setting the refresh time interval to zero (or a very low value), this allows meta refresh to be used as a method of URL redirection.

Usability

Use of meta refresh is discouraged by the World Wide Web Consortium (W3C), since unexpected refresh can disorient users[1]. Meta refresh also impairs the web browser's "back" button in some browsers (including Internet Explorer 6 and before), although most modern browsers compensate for this (Internet Explorer 7 and higher, Mozilla Firefox, Opera).

There are legitimate uses of meta-refresh, such as providing updates to dynamic web pages or implementing site controlled navigation of a website without JavaScript. Many large websites use it to refresh news or status updates, especially when dependencies on JavaScript and redirect headers are unwanted.

Alternatives to meta refresh include JavaScript and HTTP redirection headers such as HTTP 301.

Examples

Place inside <head> to refresh page after 5 seconds:

<meta http-equiv="refresh" content="5" />

Redirect to http://example.com/ after 5 seconds:

<meta http-equiv="refresh" content="5;url=http://example.com/" />

Redirect to http://example.com/ immediately:

<meta http-equiv="refresh" content="0;url=http://example.com/" />

Drawbacks

Meta refresh tags have some drawbacks:

  • If a page redirects too quickly (less than 2-3 seconds), using the "Back" button on the next page may cause some browsers to move back to the redirecting page, whereon the redirect will occur again. This is bad for usability, as this may cause a reader to be "stuck" on the last website.
  • A reader may or may not want to be redirected to a different page, which can lead to user dissatisfaction or raise concerns about security.[2]

Alternatives

Alternatives exists for both uses of the <meta> tag.

For redirection

A 301 or 302 HTTP redirect is the preferred way to redirect a user agent to a different page. This can be achieved by a special rule in the web server (such as mod_alias or mod_rewrite in Apache) or by means of a simple script on the web server (such as PHP's header() function).

Javascript is another alternative, but not recommended because users might have disabled Javascript in their browsers.

For refresh

An alternative method is to provide an interaction device, such as a button, to let the user choose when to refresh the content. Another option is using a technique such as Ajax to update (parts of) the website without the need for a complete page refresh, but this would also require that the user enable javascript in their browser.

References

External links