Author Archive

Browser Hell, 2008

This is a presentation I gave to the Web Standards and Usability Users Group meeting on April 8. The title is way too pessimistic. I should’ve changed it to “Browser Purgatory,” but that doesn’t really have the same je ne sais quoi pas.

Tags: , , ,

No Comments


Thank you, to the IE 8 team

To anyone involved in designing with CSS and semantic HTML to support Web standards, Internet Explorer has been the constant thorn in our side. IE5, IE 5.5, IE6, and IE7 have been the seemingly endless source of a Microsoft-generated ocean of frustration:

  • deviant box model
  • DOCTYPE switching
  • no min- or max- widths or heights
  • no variable-opacity PNG support
  • no SVG support
  • inability to serve XHTML as application/XML

and the sad list could go on. Many of these faults have been addressed and corrected, but increased support has been incremental, over the last six or seven years. However, earlier this year, Microsoft announced that IE 8 passed the Acid 2 test, an important demonstration of supporting most key CSS properties. Yesterday, they made that good news quite a bit sweeter, by announcing that the default rendering mode for IE8 will be with their highest support of standards, which reversed a previous plan requiring designers to include special code in their pages to trigger IE8′s standards rendering mode.

See also Microsoft’s announcement.

Tags: , ,

No Comments


Regex help

An excellent tool for regex testing is Regex Coach by Edi Weitz in Germany.  It’s makes one of the most painful coding tasks a lot less odios, thanks to real-time color-coded highlighting of matches, and a simple, intuitive interface. It’s only limitations that I’ve discovered are in character support; strangely, considering its European origins, it doesn’t support the Euro symbol “€”. That’s not likely to be a major flaw for anyone checking the regex syntax, however, and regex is an indispensible aid for that.

Tags: , ,

No Comments


Gmail vs. HMTL Validator in Firefox

I’ve been having problems this past week with Firefox freezing up when I’m using Gmail. Fortunately I found the cure today: If you’re using the HTML Validator extension (and if you’re not, you should be!) right-click on its icon in the status bar, select “Disable for mail.google.com.” on the pop-up window, modify the address to say just “mail.google.com,” click on the “Block” button, and it should populate the large listarea  beneath it. Click “Close” and you’re done! (Solution found at Gmail Help Discussion group.)

2 Comments


But I want it ugly and nothing less!

Any one who’s worked in Web design can relate to this:
http://www.makemylogobiggercream.com/

No Comments


Dirty Tricks?

microsoft_trickery.gifI don’t hate Microsoft, per se. But I do hate dirty tricks, no matter who’s doing them. And this is what I found as an ad at the XML Files today: “Linux Reference Center” linking to anti-Linux pages on You-Know-Who’s website. Some of the rotating ads there use another image that says “Linus Reference Center, Sponsored by Microsoft.” Some of the ads link to http://devx.com apparently to give a more neutral appearance to the MS propaganda zone. Was that harsh? Maybe, but I don’t think M$’s “Linux Reference Center,” no matter where it’s hosted, is going to be the place to learn objectively about Linux. Just a feeling.

1 Comment


ASP Explore

aspexplore.jpgEver wanted to just test some simple ASP scripts… or maybe individual functions… without going through the rigamarole of setting up a server on your desktop and explaining to it that no, you don’t want to build a world-eating, enterprise-worthy website right at the moment?

I recently discovered ASP Explore, and it fits the bill. It’s essentially a super-light Web browser that opens ASP files as well as HTML files; perfect for spot-checking ASP files or learning the technology. It also comes with a “setup maker” that allows you to not only bundle ASP files into a package, but make them into an executable file for easy installation on another system.

Since I’m studying ASP now, ASP Explore is a great help. Try it out.

No Comments


Update on Safari 3

On some Windows computers, Safari 3 passes Acid2 with flying colors. On others it gives the orange blindfold. Interesting, since those differing results can be seen on the same operating system, Windows XP, SP2. Who cares about badly rendering a test image, though? Firefox still doesn’t pass Acid2, but it renders pages properly. I’m more concerned about things like http://marinewebservices.com/products.php written with good HTML, CSS and Javascript, but Safari (and only Safari) breaks the page if you click the button on the bottom.

Earth to Apple: you’ve got some work to do.

2 Comments


Orange Blindfold Strikes Again: Safari for Windows

Acid2 Test on Safari for WindowsSafari for Windows? I had to try it. Safari is a superb browser, although most Mac’ers of my acquaintance prefer Firefox for the Mac.

On their download page, Apple touts the many advantages of Safari for Windows, although most of them are advantages only over the rapidly diminishing Internet Explorer 6. However, the top of the list promised that Safari would be, hands-down, the fastest browser. Well, it is. It’s amazingly fast. It also handles Flash exceptionally well. I tested it on some very Flash-intensive sites, e.g. marinewebservices.com and truckwebservices.com, and pages flew in, particularly when compared to Firefox, which seems to struggle with Flash in large quantities. (Flashblock is one of my favorite Firefox extensions.)

But the speed comes at a cost. Windows Safari’s CSS rendering is a shambles compared to its brother on the Mac. Positioned divs overlap each other unpredictably. CSS-based slideshows don’t work. I was curious how it would perform on the Acid2 Test, since Safari for Mac earned well-deserved fame for being the first to pass it. As you can see from the screenshot, it rendered the test image slightly better than Firefox 2, but not by much. Something is clearly wrong with Safari.

I might make a more detailed inventory sometime, but for now, all I can say is another broken browser is not what Windows needs.

C’mon Apple. Keep doing what you do best… iTunes, iPod, iPhone, and … what’s that computer you specialize in? Oh yeah, the Mac. Nice job, that.

4 Comments


Rethinking the “Universal White Space Reset”

You know it, you use it, you love it. I don’t remember who first came up with the “universal white space reset,” but it’s been around for years now, and it’s advantages are plain to see.

Just start off your stylesheet with:

* {margin: 0; padding: 0;}

and bam! suddenly you, not the browser manufacturers, are in control of the “white space” of every element. No worrying about differing bottom margins on headings, paragraphs, or anything else, for that matter.

So what’s the problem? In a word, the universal whitespace reset is dumb. It’s not necessarily a dumb thing to do—I simply mean that it lacks the intelligence to see when it should be applied and when it shouldn’t. I first encountered a problem with it when I was using on a dynamic site that retrieved large amounts of inventory items. I found that these inventory search results were consistently crashing in Internet Explorer (go figure), but it stopped crashing when I removed the universal whitespace reset from the stylesheet.

What was happening was every element, every em, i, b, every table, tr, td, every img, div, and p, was being checked for the presence of dreaded padding or margin, and IE was being crushed by the task. (Sometimes you’ve got to feel sorry for Internet Explorer.)

Another disadvantage is that in any environment where non-coders might be editing pages to any extent… (e.g. clients via a CMS) some of the most familiar and intuitive means of working with tables become unpredictable. For instance, in both Firefox and IE, the cellpadding attribute becomes useless. In standards-friendly browsers such as Firefox, the “align” attribute stops working when the value is “center.” (Yes, it centers via equal margins, but with the universal white space reset, you, my friend, have wiped out those margins.) CSS declarations, even with very low precedence levels in the cascade, override HTML attributes.

Since the whitespace properties of margin and padding don’t even occur in most inline elements, it doesn’t really make sense to have the browsers check them on every page, now, does it?

Here’s my proposed solution to creating a level playing field regarding whitespace concerns:

address, blockquote, p, div,
form, iframe, select, textarea,
h1, h2, h3, h4, h5, h6,
dl, ol, ul, li, dt, dd
{margin:0; padding:0;}

This deals with all of the major elements most likely to create whitespace problems, without squandering browser resources or disabling HTML attributes. You may also be interested in Eric Meyer’s solution, although his reset stylesheet deals with many tags that are unlikely to have padding or margin presets in browser stylesheets. He also goes for a complete font-weight/font-style reset—as for myself, I can live with the fact that browsers give bold text for headings and italics for cite. I’ll restyle those assumptions when I feel the need to. Also, if one limits the reset to matters of margin and padding only, it seems to make sense to me to include form elements. What do you think?

1 Comment



SetPageWidth