[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: lynx-dev Hello and question: making Web pages universally usa
From: |
Nelson H. F. Beebe |
Subject: |
Re: lynx-dev Hello and question: making Web pages universally usable: 10 steps to success |
Date: |
Thu, 2 May 2002 19:49:45 -0600 (MDT) |
Steven Bloom <address@hidden> asks on Thu, 2 May 2002 18:05:16 -0400:
>> Where can I find out how to make my web pages accessible/compatible with
>> LYNX?
Here are ten steps to good (for your readers) Web pages that lynx will
do very nicely with:
(1) Adhere to HTML standards, of which there are several levels.
Here is a minimal file that exhibits the general flavor of what
HTML is supposed to look like, but rarely does:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<HTML>
<HEAD>
<TITLE>
Hello, world
</TITLE>
<LINK REV="made" HREF="mailto:address@hidden">
</HEAD>
<BODY>
Hello, world
</BODY>
</HTML>
The <!DOCTYPE...> command is what specifies the grammar name,
location, and level.
(2) One you have created HTML files, validate them with a strict SGML
parser, such as the html-check front-end to Jim Clark's sgmls (an
SGML parser written in C)
ftp://ftp.math.utah.edu/pub/sgml/sgmls
or the html-ncheck front-end to Jim Clark's SP (an SGML parser
written in C++):
ftp://ftp.math.utah.edu/pub/sgml/sgmls/sp-*.*
Those sites contain binary distributions as well as source
distributions. SP in particular can be quite difficult to build
on some platforms, because it exercises features of C++ that are
not completely implemented, or are buggy in some implementations.
For the above simple HTML file, a validation looks like this:
% html-ncheck hello.html
hello.html ...
... valid
(3) To make HTML file creation and maintenance easier, get and use an
HTML prettyprinter, such as mine:
ftp://ftp.math.utah.edu/pub/sgml/htmlpty-*.*
I made the above test file like this:
echo Hello, world | html-pretty > hello.html
and then made two minor edits to add the title and make my email
address more generic.
html-pretty has lots of features, and knows about all of the
standard HTML grammar flavors: see
http://www.math.utah.edu/~beebe/software/index.html#html-sgml-tools
for an online version of its manual.
(4) In preparing Web pages, remember that you have no control over,
and no knowledge of, the output device on the client side. In
particular, you don't know how big the screen is (it might be a
wristwatch or PDA), whether it has color or font selections, and
even whether a screen exists: a visually-impaired person might
have an audio channel speaking the browser output. Thus, if you
do include any images, make sure that they have a text tag (ALT)
<IMG SRC="boat.jpg" ALIGN="middle" WIDTH="300" HEIGHT="150"
ALT="Picture of my new boat">
so that there is something that can be heard and understood, even
if it cannot be seen. Equally, do not use hot spots in images to
invoke actions: they are useless for audio output. Do not use
JavaScript or PDF forms either, because they require additional
support that may not exist at the client end, or may be useless in
an audio-output browser.
(5) Eliminate, or sharply limit, the use of images: at the vast
majority of Web sites, they merely add very significant delay to
the Web page display, and have close to zero content. Opt for
speed and functionality, not glitz and clutter.
(6) Avoid HTML frames entirely: they are not universally implemented,
have a serious problem that they cannot be bookmarked, and are
often impossible to print.
(7) If you really want/need to control the layout that the end-user
sees, then use a page description language, like PDF or
PostScript, to prepare page images for remote viewing/listening.
(8) Images types are not universally well-supported: .gif is close to
universal, but encumbered by Unisys patents; its replacement,
.png, is only supported in recent browsers, and some
(e.g. netscape 4.x) fail to handle its transparency option (this
hits people who use LaTeX2HTML); .jpeg is compact, but also not
universal; .tiff is powerful and complex, but rarely supported by
browsers.
(9) Avoid proprietary and/or platform-specific file formats, such as
those for word processors, spreadsheets, databases, and slide
viewers.
(10) Lastly, try out your Web pages with as many different browser
clients as you can find: I routinely use amaya, arena, chimera,
grail, hotjava, iexplorer, lynx, netscape, opera, and xmosaic
clients for testing. Although some of these are old, that is just
the point: well-designed Web pages should work well for ALL
browser clients. That means writing to the lowest common
denominator.
-------------------------------------------------------------------------------
- Nelson H. F. Beebe Tel: +1 801 581 5254 -
- Center for Scientific Computing FAX: +1 801 585 1640, +1 801 581 4148 -
- University of Utah Internet e-mail: address@hidden -
- Department of Mathematics, 110 LCB address@hidden address@hidden -
- 155 S 1400 E RM 233 address@hidden -
- Salt Lake City, UT 84112-0090, USA URL: http://www.math.utah.edu/~beebe -
-------------------------------------------------------------------------------
; To UNSUBSCRIBE: Send "unsubscribe lynx-dev" to address@hidden
- Re: lynx-dev Hello and question: making Web pages universally usable: 10 steps to success,
Nelson H. F. Beebe <=