lynx-dev
[Top][All Lists]
Advanced

[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

reply via email to

[Prev in Thread] Current Thread [Next in Thread]