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.
Regex help
Posted by Jon in Javascript on January 22nd, 2008
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.
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.)
But I want it ugly and nothing less!
Any one who’s worked in Web design can relate to this:
http://www.makemylogobiggercream.com/
ASP Explore
Posted by Jon in Server-side on August 2nd, 2007
Ever 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.
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.
Orange Blindfold Strikes Again: Safari for Windows
Safari 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.
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?