For all updates, view the main page.

TwigZone's moved to a better place, and so does this blog.

The blog's going to be left as is, as an archive, but no more.
Rate this Entry

I must be one of these guys that always code for older browsers

Posted March 19th, 2012 at 4:11 AM by Twiggy

In a nutshell: Code for everything worthy. Test in everything worthy. Work it out. Internet Explorer and Opera count, too.

Heck, you know how I roll when it comes to designing pages and div blocks around here and there. I take a pragmatic approach to things like designing pages, and you know, "don't break the web for the users", huh? Whatever it takes, I try to make sure that pages and content work well for any browser deemed good enough. Some people might think, "why the heck should I support Internet Explorer of all things?". Note that I don't exactly support every single version of Internet Explorer out there - I usually do checks for the latest version, and then work my way backwards with both Document Modes and VMs running older versions, or in some cases, machines running older OSes and IE versions. It's just part of my commitment to making sites work for everyone.

I also don't really like compromising the appearance of sites on newer browsers, however. That's why my CSS tends to be bloated - I design CSS by hand and I don't rely on any other tools, aside from possible validators, and even I don't use them a lot these days - I do manual checking. One thing I know for sure is that you don't have to give up on older browsers - one good thing about CSS and HTML is that unsupported attributes, elements and properties just get ignored and/or the fallback within is used instead. Duplicate entries, extra nesting, more code, I don't care if that makes my code a bit more bloated than usual - it's still very manageable when you give it some thought and sort them out accordingly.

One of the things that irk me the most while browsing sites is sites that haven't exactly done their job in interoperability. Sometimes it's just painful to see sites not looking the best they could in Internet Explorer and Opera. Guys, sometimes, all the work it takes for it to work beautifully is to add some lines to your files. Yes, it adds to file size, and you have to do it multiple times, but remember that you have your own trusty keyboard shortcuts to help you out. And I do really, really hope that you have already done what you should have been doing in the first place - keeping the CSS, HTML and JS organized. It makes things easier to add, remove, and otherwise maintain that way, huh?

Letting the user choose the browser they use to visit sites is a good thing to have - this is what I'd like to see the most. Diversity in browser choice is what I'm subscribing to these days and I don't think that there can be one single bad browser that everyone should drop support - and frankly, sometimes, people have no choice in their browser. Especially in corporate environments, where compatibility is paramount. You don't have to drop compatibility with older browsers when you code the new and shiny if you know what you're doing, but don't overdo it - sometimes there are lines to draw, and some browsers are just too old and creaky to do fancy stuff. But if it should be capable in one way or another, I try to make it just work. Fallback unsupported styles. Avoid unnecessary elements wherever possible.

I think I have had enough of sites not displaying properly in Internet Explorer or Opera these days, especially when you consider that both Internet Explorer 9+ and Opera 11.5+ are capable browsers on their own right. I don't care about benchmarks of any sort - I only care about how well they work in real life, in real websites, to the end users. Don't do nonsensical things when you do designs of pages.

Let's see what I can list that can be attributed to people not bothering with compatibility and interoperability between different browsers:
  • Missing -ms-, -o-, or unprefixed CSS and JS properties/selectors/queries/whatever - where's my new and shiny?
  • Using APNG without any sort of fallback for animated images, especially animations which are colour-limited in nature (e.g. sprites)
  • Not having a standard file-upload-based fallback for uploading
  • Missing Document Type Declarations/unnecessary text before the DTD
  • Not specifying more than one media file in HTML5 audio and video elements
  • Assuming that IE will never change - missing effects galore in IE9+ due to being served content designed for older versions
  • Setting an X-UA-Compatible tag in the HTML or HTTP header, then forgetting to check whether it's still suitable for a later browser
  • Shoving Google Chrome Frame rendering to newer versions of IE, especially IE10 where there's no reason to do so (yes, there's a way to make it activate only for older versions)
  • Unnecessary CSS gradients when a PNG-based gradient would work well enough... and not having a fallback to it
  • Locking out features based on the user agent string of a browser, or deliberately serving different markup to them (I hate vBulletin 3. Chrome should be as capable as Firefox and IE (!) and the fixed bug in IE causes bugged rendering...)

Every single one of these makes me have an headache. A very, very bad one. I just want to make sure that the web works well enough for everyone, but alas, I guess a bit of idealism and pragmatism just doesn't exactly roll. But I will persevere when it comes to things like this. I don't bother with statistics - I just deal with what I should target in good faith.

Don't break the web, please. I beg of you. Make my torment stop now. And everyone else's.
Posted inTech, ‎Rants
Views 2859 Comments 7
« Prev     Main     Next »
Total Comments 7


  1. Old Comment
    Liliana Vess's Avatar
    I say that browsers need to just stop being so awkward and use the same CSS codes instead of adding all this -moz- and -webkit- just so they can feel special.
    Posted March 19th, 2012 at 7:57 AM by Liliana Vess Liliana Vess is offline
  2. Old Comment
    Kura's Avatar
    I honestly wish I could understand what you're talking about when you mean certain terms and stuff @_@ part of this confuses me but coding really intrigues me!
    Posted March 19th, 2012 at 1:05 PM by Kura Kura is offline
  3. Old Comment
    Twiggy's Avatar
    Originally Posted by Hybrid Trainer View Comment
    I say that browsers need to just stop being so awkward and use the same CSS codes instead of adding all this -moz- and -webkit- just so they can feel special.
    It's part of the standardization process. The mess that is know as IE6 just held back the Web at large. And sometimes different vendors implement different specifications for the same thing, so everything isn't that rosy anyway. But the bigger problem is people forgetting other prefixes and the unprefixed property.
    Posted March 19th, 2012 at 9:08 PM by Twiggy Twiggy is offline
  4. Old Comment
    donavannj's Avatar
    Well, technically, there is no official ratified standard because the standards organization just meet too infrequently to actually properly ratify a true set of standards.
    Posted March 19th, 2012 at 10:40 PM by donavannj donavannj is offline
  5. Old Comment
    Twiggy's Avatar
    Originally Posted by donavannj View Comment
    Well, technically, there is no official ratified standard because the standards organization just meet too infrequently to actually properly ratify a true set of standards.
    You guys might want to take a look at the Working Drafts and Minutes then :p
    Posted March 20th, 2012 at 1:46 AM by Twiggy Twiggy is offline
  6. Old Comment
    donavannj's Avatar
    Originally Posted by ♪Twiggy♪ View Comment
    You guys might want to take a look at the Working Drafts and Minutes then :p
    The last properly ratified standard was XHTML 1.1, iirc. Nothing that's become "standard" since then has actually been properly ratified due to the way the organization works.
    Posted March 21st, 2012 at 9:40 PM by donavannj donavannj is offline
  7. Old Comment
    Twiggy's Avatar
    So much for that. One does have to wait a long time before stuff are finalized, but most of the time, CR stuff are good enough to work in most situations, as long as all goes well. You don't really have to.wait until the 2020s

    Ok, that might be exaggerating.
    Posted March 22nd, 2012 at 1:47 AM by Twiggy Twiggy is offline

All times are GMT -8. The time now is 12:20 PM.