Re: NS...... IE .........confussion !

by Kynn Bartlett <kynn-hwg(at)idyllmtn.com>

 Date:  Wed, 13 Oct 1999 03:31:51 -0700
 To:  belal(at)mathtech-pk.com
 Cc:  hwg-style(at)hwg.org
 In-Reply-To:  net
  todo: View Thread, Original
At 02:59 PM 10/13/1999 +0500, belal(at)mathtech-pk.com wrote:
>I am a comparatively new web page designer,  what makes me confused is the
>use of LAYERS and CSS, ( how can i make a web page compatible for both NS
>and IE), also what is the difference between LAYERS and CSS.

I would advise against using layers at all -- they're a proprietary
extension to the HTML standard created by Netscape, and they have not
been adopted by the W3C.  This means, among other things, that they
are not guaranteed to work on standards-compliant devices, that they
have not undergone the W3C process which includes checks for quality
of a proposal and the underlying accessibility of the features, and
it means that they are far from interoperable.  An interoperable web
should be the goal of all web creators.

Making a page look correct in Netscape and Internet Explorer -- as
well as other browsers which you neglect to mention (perhaps because
you are not familiar with them?) such as Opera or WebTV -- is a 
very tricky thing to do for a variety of reasons.  The chiefmost of
these is that each browser (even Opera) has implemented only a
SUBSET of the Cascading Style Sheet specification, and in many cases,
these implementations are buggy and can cause serious problems.  

MSIE 3.0 has what I'd call the buggiest implementation, followed
by Netscape 4.0.  MSIE 4.0 is relatively decent but still not
fully acceptable; Opera has good implementation overall but is 
limited by a (likely correct) design decision to only work on CSS
level 1 and get that working before attempting CSS level 2.  
Unfortunately, CSS level 1 is not a particularly robust standard
and can't really be considered a "complete" specification without
some of the elements of CSS level 2.

Now, one thing you asked was how to make a site "compatible" with
both [sic] browsers.  Here you are going to have to start defining
terms -- what exactly are you looking for?  Many people have the
expectation that their design will identical on any browser, using
CSS.  That's not going to work, and if that is the goal of anyone
out there, I recommend that you are in the wrong field of work and
need to find a job in the print industry!

I suggest that rather, the metric for determining if a CSS-based
page "works" in any given browser be based on transmission of
information, and not on (visual) appearance.  In other words, it
should be considered "broken" if the ability of the user to 
receive and understand content is affected negatively, and considered
"not broken" if, despite changes in visual rendering, the content
can still be received and understood.

What do I mean by this?  Well, for starters, CSS is meant to
_degrade nicely_.  I might design a page that uses CSS for all
visual (and auditory) appearance functions, that contains certain
data -- say, information on my dogs.  If a browser that does not
support CSS is used, such as Netscape 3.0 or Lynx, the appearance
will be vastly altered.  My fonts, my colors, my page layout may
be completely gone, to those users!

This should only be considered "broken" if some data is _lost_
somehow in the process.  In other words, if you can't find out
about my dogs, then it's a problem.  If you _can_ still find out
about the dogs, then Cascading Style Sheets, the page design,
and the browser are all _functioning correctly_, at least using
the metrics I've defined above.  This is because CSS is designed
to be able to "fail" and still present the information.

It's possible to create pages that do break, however, and those
practices should be avoid.  For example, if I were to color-code
a chart and say merely "all blue entries represent departures,
all red entries represent arrivals" -- if there's lack of color
ability (or CSS support for those color changes), then the
information will be lost.  Web designers should anticipate those
possible problems and be sure to use alternatives -- for example,
in this case I'd explicitly include "ARR" and "DEP" labels or
columns on the chart.

Hope this helps some.

--
Kynn Bartlett <kynn(at)hwg.org>
President, Governing Board Member
HTML Writers Guild <URL:http://www.hwg.org>
Director, Accessible Web Authoring Resources and Education Center
  <URL:http://aware.hwg.org/>

HWG hwg-style mailing list archives, maintained by Webmasters @ IWA