Browser compatibility

pjf on 2004-10-20T08:55:36

Lunchtime Code
This lunchtime over a salad roll I put together code to generate Perl Training Australia Brand Fairy Dust(TM). These are the little squares that appear on our letterhead, course covers, logo, and other corporate branding.

The code allows for variable density and colour saturation, the creation of different sized areas, and various scaling factors. This means that it's very easy to generate some very cool looking special effects. It's good to have a well-behaved logo.

Browser Compatibility
I'm looking at sprucing up the look, feel, and auto-generation of the Perl Training Australia website, hence the fairy-dust generator. The current site uses lots of HTML 4.01 transitional code for layout and formatting, and a splash of CSS to make things look nicer.

The result is a website that works in everything, and even degrades nicely in browsers that don't yet grok tables or stylesheets. However looking at the code makes me feel uncomfortable -- standards are important, and HTML 4.01 Transitional isn't as standard as I would like. Everything could be made much more simple using strict XHTML and CSS. Sure enough, creating a fully standards-compliant mock-up was a quick and simple operation.

Except for the browser compatibility.

MSIE doesn't support fixed positioning. Netscape 4.7 has different ideas about the transparency of coloured div backgrounds. w3m and lynx don't do much with stylsheets at all.

Of people looking at our website, 48% use MSIE 6, 23% use Mozilla, and 6% use MSIE 5.x. I want our site to degrade nicely in MSIE 5.x, as I'm certain some of that 6% are honest-to-goodness paying customers. The question, of course, is how do I test it?

A bit of googling later and I discovered instructions on how to install multiple versions of MSIE on a single Windows install. Don't know if it will work, but I'm giving it a go.

If all tests well, then we can expect to see a prettier, XHTML/CSS Perl Training Australia website in the near future. Auto-generated fairy dust and all.


Arh.....

ajt on 2004-10-20T12:02:35

I hate them all, they are also do damn incompatible between and within each other...

You can patch IE5 and IE6 with IE7 which does fix a lot, but it's not perfect. Other than that, IE is a real dog, alsorts of things are very broken, and it's highly incompatible with it's self.

Netscape pre 6 is a joke, there isn't a lot you can do for that browser, it's time to put Netscape 4.x in the museum where it belongs.

Opera users tend to keep up todate, and since version 6 it's been pretty good anyway. It's not perfect, Op6 has no DOM support, and though Op7 is much better, it's still missing the odd thing.

Anything based on Mozilla 1.x or later is pretty good, it's not perfect, but it's close. As with Opera users, Mozilla users tend to keep up to date to some extent, so you usually don't have to worry about the older "broken" versions.

I don't use Knoqueror 3.x or Safari, but I gather they are pretty good. But as you'd expect, they do the odd strange things too.

See also:

Browser "standards"

pjf on 2004-10-20T13:13:40

I hate them all, they are also do damn incompatible between and within each other...

I just discoverd this the hard way, but it's done. Perl Training Australia now looks good in Mozilla-family, MSIE 6.0, MSIE 5.5, MSIE 5.0, and degrades acceptably in MSIE 4.01 and Netscape 4.77. I haven't tested with other browsers. It also confirms to CSS 2, and HTML 4.01 Transitional.

The only real hack was in the stylesheet to hide fixed positioning from MSIE (which doesn't understand it). Getting things to degrade acceptably with Netscape 4 required some careful treading.

Thank-you very much for all the links, I'd already stumbled upon a few (quirks mode, Zen garden, and the browser archive), but the rest look extremely interesting. I wish I had discovered position is everything a few days ago.

The most frustrating part of the whole experience is that style-sheets and standards are supposed to exist to get around all this sort of rubbish.

Re:Browser "standards"

ajt on 2004-10-20T13:25:41

I came across Position is Everything this time last year, having spent the summer fighting with bugs in IE. Once you understand how IE is broken, it's much easier to build a standard complaint design that works with both the standards and IE. I had a very frustrating time until I came across the fixes on this site.

We have been looking for Perl training at work. Your site is very nice, it's a shame we are on the wrong side of the world to send someone to you.

Perl Training

pjf on 2004-10-21T00:21:43

We have been looking for Perl training at work. Your site is very nice, it's a shame we are on the wrong side of the world to send someone to you.

Don't worry, one of our highly qualified trainers can come to you. I'm sure that Damian would like more travel. ;)

If you're looking for training closer to home, then Gabor's excellent perltraining.org site has trainers sorted by geographical location. I need to update the entry for PTA, since we're about to celebrate our three-year anniversary, and aren't exactly new anymore.

If I were to refer you for UK training, I'd probably point you at Mag-Sol. Apparently their primary trainer has written a couple of books on niche technologies like Template Toolkit and Data Munging. ;)

Re:Perl Training

ajt on 2004-10-21T07:48:34

Actually, I think given the time of year, my wanting to be trained colleague, would have preferred to travel to visit you...

I'll check out the perltraining site, I didn't know about that.

My first port of calls was actually Dave, but he is in full time employment, and his first suggested alternative wasn't available either...

Re:Perl Training

pjf on 2004-10-21T08:15:45

Actually, I think given the time of year, my wanting to be trained colleague, would have preferred to travel to visit you...

We do have a reasonable number of people travel to attend our courses, although usually they're just interstate or from New Zealand, which is practically another state anyway.

We had a student a few months back that had crossed four timezones to reach us, from New Zealand to Perth.. Our courses were starting at 1pm NZ time, and finishing at 9pm NZ time.

That worked very well, as he made an excellent canary. If he started to fall off his seat, I knew it was worth stopping the class for a break and coffee.

As far as I know Australia is very happy to issue visas for short-term visitors wishing to spend their money with domestic businesses. So please feel free to refer your colleague to us. ;)

Re:Perl Training

ajt on 2004-10-21T08:52:57

I don't think he needs a visa, and I think that West Yorkshire is a little closer...