chipotle: (Default)
[personal profile] chipotle
The demo at work went pretty well. Very well, even.

Then, my boss told me that Linvatec isn't standardized on Internet Explorer, the way 90% of the world is. They're standardized on Netscape 4. Now, there will be some of you who applaud this. Yeah yeah, Microsoft evil. The problem is that Netscape 4 is not standards-compliant.

There's been a drive for years to "clean up" the HTML on the web by separating content from formatting. That's what "cascading style sheets" are for. CSS Level 2 was a standard by 1998 (with Level 1 a standard in 1996). I use style sheets for nearly everything. There's one minor problem. The CSS implementation in Netscape 4's rendering engine is horribly broken. IE 4 didn't get everything right, either, but it came worlds closer.

And IE 5 improved on that. The rendering engine in the Netscape 4 line hasn't changed since the 4.0 release, save for bug fixes. Netscape 4.5 was the last major update and--other than adding AOL-driven content hooks--the change was in the Javascript engine, not the HTML rendering core.

At some point, I finally just gave up. There is no reason that web standards should continue to be held hostage to a browser which is not only long-obsolete but didn't do a very good job of following the existing standards when it came out. (I'm sorry to Netscape fans, let alone ex-Netscape developers, but you know it's true.) I tried to make sure web pages degraded gracefully on "old" browsers, but that was about it.

For contract work, I should have checked; the client knew what I was developing on and with, but most developers don't understand how behind Netscape 4 is. That's part of why WYSIWYG web tools generate such convoluted markup, I've realized: they have to hard-code everything in ways that look consistent across multiple browsers. My boss didn't know the version of Netscape they were standardized on--the question didn't come up in the last two weeks. And every office I've been in for years has standardized on IE. And, hell, I'm on a Mac OS X workstation: I can't even get Netscape 4 for it.

Netscape 4 doesn't have any idea how to handle CSS inheritance. It doesn't inherit when it should and it inherits when it shouldn't. Sometimes it just blindly ignores spacing directives. When I apply a style to a link, sometimes the link stops being a link. And to top it off, it doesn't even support all of non-CSS HTML 4 correctly--the "readonly" attribute in form fields is being ignored. Gah!

I think I've redone the style sheets for the site in a way which works on both Mozilla and NS4. I'll still have to check to make sure nothing broke in IE (Mozilla and IE are really close, but occasionally quirk at one another). But I have to modify the HTML to get some of the appropriate spacing now--thus defeating a major point of CSS. And there are some pages which are just screwed up now. I'll probably have to use PHP scripting to have it physically serve different pages to people with Netscape 4. I'll have to use nested tables to be able to have the look that I've already shown people. Some things might not be doable at all the way they've already been demonstrated. Some things may require serious hard-coding.

I'm going to end this rant with a challenge. If you're one of the Netscape 4 holdouts, and you're also one of those people who grumble about crappy, bloated web pages and overuse of Macromedia Flash, guess what? You are part of the problem. Web designers are using WYSIWYG tools that generate crappy, bloated web pages in no small part because it's the easiest way to make pages that look good on all browsers--even though a modern browser could do the same look and more with an HTML4/CSS page that takes up 10% of the space. And if you have Flash installed on your system, Flash content always looks the same: it's a way for designers to bypass the entire issue completely.

If you are still using any browser that doesn't support HTML4/XHTML, CSS Level 2 and the Document Object Model (DOM) correctly, get Internet Explorer 5.x+ or Mozilla 1.x. Use one of the hip alternative ones like iCab, Opera or OmniWeb if you want, but get IE or Mozilla, too: all the hip alternative ones think they're standards compliant and in my experience all of them are wrong. I don't care if you don't like Microsoft. I don't care if you think Mozilla is bloated. (Yes, it needs 64M of RAM to run. Get over it. RAM chips are as cheap as corn chips.)

Now, I'll get ready for bed, looking forward to the fun tomorrow of redoing a few crucial and highly complex pages more or less from the ground up.

Date: 2002-10-22 06:14 (UTC)
From: [identity profile] chipotle.livejournal.com
To some degree that's what I'm going to be doing, just for things that can't be fixed in a cross-platform fashion. For the stuff on the intranet side NS4 gets priority; for the internet stuff I'm going to advocate making sure the 95% of the world using better browsers get priority.

Date: 2002-10-26 16:02 (UTC)
From: [identity profile] fenrirwolf.livejournal.com
This method isn't foolproof, either. Especially when you have browsers which broadcast unusual agent tags (Opera), or worse, fake being Internet Explorer 5.5 or Mozilla when they are clearly not to IE/Moz render standards (Konquerer). Still, it's the best you can do, if you want to mix proper format-neutral content with the old HTML way. Either that, or include tons of Javascript hacks. (Which causes another class of technophiles to complain...) Heck, at least with style sheets, even Lynx will render your website properly.

Ugh. So, I feel your pain, Chipotle.

I know some folks are stuck with NS4.x, like it or not, due to some valid reason or another. That's fine. But be aware that if you're still using an old browser trying to render modern pages (that, yes, still contain lots of broken HTML -- one of my biggest complaints about browsers is that they are too forgiving), then you're going to see garbled content. I can't help that without doubling my time spent on a project. Which leads to less time devoted to the content overall.

Hell, even Mozilla 0.9 and up still contain broken CSS directives -- the center properties don't work as you expect them to, forcing you to encapsulate things in good old <center> tags.

Bah. I'll get off my soapbox, now.

Date: 2002-10-26 20:52 (UTC)
From: [identity profile] chipotle.livejournal.com
The PHP check that I had looked for "Mozilla/4" starting the browser ID sequence string, and I'd have probably taken the stance that any browser which claimed to be genuinely be Netscape 4.x would deserve whatever it got. :)

Fortunately--in a peculiar sense--I discovered the next morning after my anti-NS4 rant that a crucial part of the system that used (fairly straightforward) Javascript acted in three different ways on Netscape 4.79 for Windows, Netscape 4.79 for Mac and Netscape 4.77 for Mac. On that observation, my supervisor essentially told the company's IS department, "We can't use Netscape 4 for this, so tell us we're either using Netscape 7 or Internet Explorer."

I also noted there are copies of IE 4 running around the place, which it isn't really tested with beyond a 10-minute demo.

Date: 2002-10-27 13:50 (UTC)
From: [identity profile] fenrirwolf.livejournal.com
Wow, upper management actually listens. A rare thing indeed... Good luck!

And I agree, if you fake it, then be prepared to pay the price. Oh well, it could be worse. They could be forcing you to do the whole website in Flash. :)

Profile

chipotle: (Default)
chipotle

February 2018

S M T W T F S
    123
45678910
11121314151617
18192021222324
252627 28   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated 2025-12-28 14:59
Powered by Dreamwidth Studios