What's wrong with <FONT>? was, Netscape invades w3.org!

Warren Steel (mudws@mail.olemiss.edu)
Fri, 10 May 1996 09:40:09 -0500

Message-Id: <31935549.6193@mail.olemiss.edu>
Date: Fri, 10 May 1996 09:40:09 -0500
From: Warren Steel <mudws@mail.olemiss.edu>
Cc: www-html@w3.org
Subject: What's wrong with <FONT>? was, Netscape invades w3.org!

Carl Morris wrote:
> And what the hell do you have against FONT.  I will say, I have removed
> nearly every instance of it off my pages, but since styles sheets are NOT
> A STANDARD the FONT COLOR tag provides what I think will be easier than
> CSS anyway.  Even when CSS are a standard, guess what happens?  <FONT>
> becomes a form of DIV linked to a style sheet containing the element
> properties ... now whats the difference between style sheets and FONT?  To
> me, the difference is clear, FONT is the winner...  CSS will be hard to be
> as "human writable" as FONT is.

   What the hell do I have against FONT?  I thought, Carl, that
I'd made this pretty clear in the last few days, both before and
after the birth of "Wilbur" 3.2.  But since you asked, and since
it's still on my mind, I'll run it again.

   HTML is designed for communication.  Whether you want to
report events, express emotions, vent opinions, sell products
or services, or convert the heathens, you want your audience to
have access to your message.  I realize that this is an 
assumption, and it may be unwarranted in some cases, but
for the moment let's take it as given.

   HTML offers several ways of distinguishing some text from
"ordinary text"; some by their function (<h1>..<h6>, <em>,
<stong>, <cite>, <address>), and some by their appearance
(<i>, <tt>, <b>, <big>, <small>).  Either way has legitimate
uses: the functional method may be more reliable, but a well-
designed browser will attempt to distinguish even "physical"
markup from the run-of-the-mill.

   Enter the <FONT> element.  To be successful, reliable, and
useful, the effects of this element should "degrade gracefully"
on browsers that do not support the tag, while maintaining
accessibility and legibility on browsers that *do* support it.
As to the first, <FONT> does no "harm" to browsers that ignore
it, but for distinguishing text as "important," it is less
reliable than <h1> - <h6> for headings, or <em> or <strong> for
individual words or phrases.  If you are depending on some form
of emphasis to make your point, <FONT> will fail in a large 
number of cases.  So will <SUP>, <SUB>, <BIG>, and <SMALL>,
so this is not a crucial issue--wise authors have learned how to 
use these tags wisely.  

   Now look at the effects of <FONT> on those browsers which *do*
recognize it.  First, <FONT SIZE= >.  I'm sure you're aware that
one of the pre-eminent advantages of HTML documents over print
media is that they're scalable and configurable--those with 
impaired vision can choose larger fonts for legibility, while 
those with limited display areas (laptops, etc.) can choose
smaller fonts to get a meaningful amount of information on
screen.  In either case, users may need, for reasons of access
and legibility, a rather narrow range of font sizes.  Variations
on the order of <BIG> and <SMALL> should not be a problem, and
neither should the relative markup <FONT SIZE="+1"> or "-1".
But authors are not being told that the use of more extreme
relative sizes (SIZE="-3"), or "absolute" font sizes (SIZE="1") 
or <BASEFONT>, are a definite hindrance to mere communication
for users of browsers that *do* recognize <FONT>, while failing
to distinguish text at all on those that don't.  

   Are you with me so far?  Now let's look at <FONT COLOR= >
which you have occasionally embraced.  I am not talking about
the body-color attributes supported by popular browsers and
enshrined by Wilbur.  The effects of <BODY BGCOLOR= TEXT= >
etc. are under the user's control.  For many reasons, users
may prefer to disable document color schemes and choose their
own default background and text colors, ensuring legibility
at all times, while satisfying the user's esthetic taste.  
Enter <FONT COLOR= >.  Let's say you have a document in which
a dark background and white text are set in the <BODY> tag.
Now, for emphasis, you mark up some text with <FONT COLOR=yellow>.
Let's say that I have configured my browser to disregard the
body-color tags, and to use my own scheme of black text on 
yellow background.  Will I see your yellow text at all? 
probably not, unless I happen to view your HTML source.
This is not too far-fetched at all.  Users have legitimate
reasons for their configuration choices.  In this case an
"innocent" author fails to communicate, because he has used
an element which was ill-conceived and never thought through.
As a Netscape 2.0 user, I can set my own bodytext colors, but 
I can't disable the effects of font colors, and the result is
failure to communicate.  Did nobody at Netscape, or at W3C,
consider this?

   I have never seen the effects of <FONT FACE= >.  Suffice 
it to say, that, just because I may have a font on my system 
with the same name as a font on yours, there's no guarantee
that they look at all the same, regardless of special needs
or preferences.  A font that looks legible, attractive, and
eye-catching to the author on one system may be illegible, 
ugly, and muddled to the viewer on another system.  Again, 
gratuitious loss in communication.

   I realize that some authors would like to specify these
elements in their documents.  Style sheets, as currently
proposed, offer various levels of substitution, and preserve
legibility for the viewer.  But there is nothing to be gained
by using the <FONT> element.  It is entirely counter to one of
the principal goals of hypertext markup, that is communication. 
I see no reason to include it in the HTML 3.2 specs, even for
"backward compatibility."  <BLINK> and <MARQUEE> may be merely
annoying; <FONT> is an obstacle to communication on the Web.

  Warren Steel                     mudws@mail.olemiss.edu
  Department of Music           University of Mississippi
          URL: http://www.mcsr.olemiss.edu/~mudws/