I’ve looked a bit more into the way ASP.NET handles HTTP errors, and frankly it now seems not just irritating, but downright bizarre.
Update: Thierry Koblentz points out in the comments that either technique may be appropriate, depending on circumstances. I mention this in the last paragraph, but just to be clear, there should have been a “usually” or “often” or some such word in front of the “better” of the title. That, or a different title.
Update 2, December 2008: It is now accepted that it is better to use
top: -9999px;, as using
left: would cause a scroll bar on a page with right-to-left text.
A recurring question on various mailing lists such as the Web Standards Group discussion list is “How can I hide content but still have it accessible?” This is usually asked in the context of image replacement techniques, where one might for example wish to display a heading in a fancy typeface, but still have the content accessible to users of assistive technologies such as screen reading software.