Andy said:
What's wrong with "This page has been tested in the following browsers
.... , but does not appear to work properly in the one you are using. If
you wish to see this page properly, please upgrade to one of them."
Because this message doesn't cover say Firefox 1.5.0.4 (the latest one)
if someone disabled JavaScript out of curiosity. It also doesn't cover
IE 6.0 with security settings twisted by a wannabe admin. These are
definitely browsers you tested on, and there is nowhere to upgrade. So
such message is both useless and misleading.
Please get me right: I'm /not/ one of these bored mind thinking that i)
the working range of the solution has to cover all existing browsers
back to 1998 and further, ii) be ready for a blind and deaf user using
a tong manipulator for navigation, iii) respond for each Lynx esthete
with ads-free text-only content plus images converted into ASCII
graphics, iv) nor many crazy things like that.
The fingers are yours and you are free to show them at any moment then
you feel like (unless explicitly prohibited by law).
Still some basic street politesse requires at least to inform your
visitor of the reason (s)he sees a finger instead of the content. And
the reason has to be spelled correctly.
In this aspect I don't see a way to combine both "no script" and "no
vital feature" situations. There must be two fall-back ways completing
each other.
Note 1: Users with scripting disabled (if they really exist) will not
get any extra care out of me besides the <noscript>'ed "See you later,
alligator". But at least this I will give them.
Note 2: There is some bitter taste left from <noscript> from the Web's
childhood, and it seems inherited by some developers from the new wave:
as they "know" that "there is something about <noscript>", but they
have no idea what exactly.
The draw back was caused by placing <noscript> block right after the
<body> tag: the most obvious place for an attention grabber in case if.
As search engines were in their childhood too, they took sample text
for the index entry from the first paragraph on the page, disregarding
on whether it's <noscript> or <body> block on frameset page. As the
result many pages on say AltaVista were "indexed" like:
Page Title
http://...
Sorry, your browser doesn't support JavaScript...
or
Page Title
http://...
Sorry, your browser doesn't support frames...
(I have to explain that in 1996-99 a failure to index properly on say
AltaVista was a big deal).
I strongly believe that modern search engines including Google are much
smarter on that. Still rather than check the smartness of different
search engines I would suggest to place <noscript> block (if used) not
right after the body, but after the first paragraph on your page. One
can always adjust the position by using styles (though it is maybe
better do not bother with it for KISS considerations).
What's wrong with:
<html>
<head>
<title>Demo</title>
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1">
<style type="text/css">
body {
color: #000000;
background-color: #FFFFFF;
}
noscript p {
font-size: 100%;
font-weight: bold;
background-color: #FFFF33;
text-align: center;
width: 75%;
margin: 1em 1em;
padding: 1em 1em;
border: medium solid red;
}
</style>
<script type="text/Jscript">
//alert('That IE... Some extras just being done for it.');
</script>
<script type="text/javascript">
function init() {
if ('undefined' == typeof document.ImportantBogusOne) {
// we are still trying to use an equivalent but
if ('undefined' == typeof document.ImportantBogusTwo) {
// then the patient is hopeless
alert('Your browser is hopeless! Nothing I can do.');
}
}
}
//window.onload = init;
</script>
</head>
<body>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit,
sed do eiusmod tempor incididunt ut labore et dolore magna
aliqua.</p>
<!-- A bit out of the beginning if some search engine
happens to be so stupid: to grab this text: -->
<noscript>
<p>You have disabled scripting for this site.<br>
Some or all features on this page may be not available.
Some data may be missing or not shown properly.</p>
</noscript>
<p>Ut enim ad minim veniam, quis nostrud exercitation ullamco
laboris nisi ut aliquip ex ea commodo consequat.</p>
</body>
</html>