Results 1 to 8 of 8

Thread: IE 6 - Yuck?

  1. #1
    Join Date
    Sep 2008
    Location
    Seattle, WA
    Posts
    135
    Thanks
    1
    Thanked 11 Times in 11 Posts

    Default IE 6 - Yuck?

    [This reply was originally separated from this thread]

    Personally i'm tired of making concessions in design to accommodate the lowest common denominator. If someone is using IE6 or sooner then likely they're on an old CRT style monitor that is also going to require you make your designs 700 pixels wide and centered. So, even if you fix the PNG issue, is your design 700px and centered? The point is, they're never going to see it the way you designed it unless you designed it specifically for IE6.

    A better fix for all of us is to simply place a link on the site that says "Click Here To Upgrade Your Browser... it's FREE. Then you'll stop seeing all this weird crap on your screen". By catering to 5 year old technology we're just giving them more reasons to be lazy.

    Reminds me of the Netscape/Explorer wars of the 90's, having to design twin sites and give the choice to the viewer on the home page which way they wanted to view it. Garbage.
    Last edited by djr33; 10-16-2009 at 10:17 PM.

  2. #2
    Join Date
    Mar 2005
    Location
    SE PA USA
    Posts
    30,495
    Thanks
    82
    Thanked 3,449 Times in 3,410 Posts
    Blog Entries
    12

    Default

    Quote Originally Posted by simcomedia View Post
    Personally i'm tired of making concessions in design to accommodate the lowest common denominator.
    Then don't, but please don't rag about it in someone else's thread. Though it is possible to accommodate older browsers and displays without limiting your design. If you want to discuss this further, take it to the lounge area.
    - John
    ________________________

    Show Additional Thanks: International Rescue Committee - Donate or: The Ocean Conservancy - Donate or: PayPal - Donate

  3. #3
    Join Date
    Mar 2006
    Location
    Illinois, USA
    Posts
    12,164
    Thanks
    265
    Thanked 690 Times in 678 Posts

    Default

    Personally, I am not too bothered by the idea of if(IE6), which would be quite easy to implement in PHP. However, there are two problems with that:
    1. It is a pain to setup in terms of design: you would have to have extra PHP code on your page for every image you want.
    2. IE6 is not the only browser that will have problems. Other browsers, such as text only browsers, will also have odd results, so having a page that relies on certain effects is bad and it should downgrade smoothly.

    Despite this, though, IE6 is certainly the most likely "bad" browser, so specifically dealing with it is possible. User-agent strings are not reliable and can be faked, but if this is not security and you are wanting to just help the average user of IE6 to see your page correctly, it will work most of the time.

    PHP Code:
    <?php
    if (strpos($_SERVER['HTTP_USER_AGENT'],'IE6')) { //***
    //do IE6 stuff
    }
    else {
    //do the normal code
    }
    ?>
    The line I marked with *** searches the User Agent string (sent by the browser to the server) for "IE6". I don't have IE6 available at the moment, so you need to determine what the best thing to search for to identify the browser is. The string will vary slightly by system, so find a short phrase like "Internet Explorer v6" or whatever is common to all of them.
    (Just echo $_SERVER['HTTP_USER_AGENT']; to see what the browser is sending.)


    It seems unreasonable to me, though, that you would need to go this far with fixing something for one browser, so I'm not sure I'd recommend using the code above, but it would work if you want.
    Daniel - Freelance Web Design | <?php?> | <html>| español | Deutsch | italiano | português | català | un peu de français | some knowledge of several other languages: I can sometimes help translate here on DD | Linguistics Forum

  4. #4
    Join Date
    Apr 2008
    Location
    So.Cal
    Posts
    3,643
    Thanks
    63
    Thanked 516 Times in 502 Posts
    Blog Entries
    5

    Default

    Quote Originally Posted by djr33
    if this is not security and you are wanting to just help the average user of IE6 to see your page correctly...
    If that's the case, you could simply use <!--[if lte IE 6]> do IE6 stuff here <![endif]-->. IE should read it correctly (if it doesn't, it's just a ugly page), and everyone else *will* ignore it. I use IE conditional comments with good results to serve IE-specific css.

    Something as simple as <!--[if lte IE 6]>Internet Explorer 6 is no longer supported. Please upgrade to a modern browser. <a link to FF><a link to IE 8><![endif]--> is all the accommodation I bother with.

  5. #5
    Join Date
    Mar 2006
    Location
    Illinois, USA
    Posts
    12,164
    Thanks
    265
    Thanked 690 Times in 678 Posts

    Default

    Note: my reply was in response to something in another thread, specifically about using PHP.

    As for what you said, though, the IE conditional comments seem reasonable, but they also look ugly in the code; using PHP would be a hidden way to do the same thing. Generally the conditional comments would be fine if you want to use that approach.
    Daniel - Freelance Web Design | <?php?> | <html>| español | Deutsch | italiano | português | català | un peu de français | some knowledge of several other languages: I can sometimes help translate here on DD | Linguistics Forum

  6. #6
    Join Date
    Mar 2005
    Location
    SE PA USA
    Posts
    30,495
    Thanks
    82
    Thanked 3,449 Times in 3,410 Posts
    Blog Entries
    12

    Default

    Either may be used. Conditionals have the advantage of being virtually instant client side code. They do muck up a page's served source code a bit though, more so if their application is not well thought out. However, though well thought out PHP branching on this would serve clean source code, the server must get involved. This can slow things down, though not always. In any case, the code you (the page's author) write (as opposed to the page's served source) would still be a bit mucked up.

    One other thing though, if the:

    Code:
    $_SERVER['HTTP_USER_AGENT']
    can be spoofed in the same way that the navigator object in javascript can be (which I'm pretty sure it can), you are better off with conditionals.
    - John
    ________________________

    Show Additional Thanks: International Rescue Committee - Donate or: The Ocean Conservancy - Donate or: PayPal - Donate

  7. #7
    Join Date
    Mar 2006
    Location
    Illinois, USA
    Posts
    12,164
    Thanks
    265
    Thanked 690 Times in 678 Posts

    Default

    But spoofing only applies when someone is trying to get around something: no one (except exceptionally stupid users) would spoof their IE user agent string to get badly served PNGs or otherwise. And of course no one runs around using Firefox pretending they're on IE

    As I said above, this is not guaranteed for security, but it's entirely reliable for just helping users get a working page. If they want to mess with it, fine by me-- they don't want a working page.
    Daniel - Freelance Web Design | <?php?> | <html>| español | Deutsch | italiano | português | català | un peu de français | some knowledge of several other languages: I can sometimes help translate here on DD | Linguistics Forum

  8. #8
    Join Date
    Mar 2005
    Location
    SE PA USA
    Posts
    30,495
    Thanks
    82
    Thanked 3,449 Times in 3,410 Posts
    Blog Entries
    12

    Default

    Quote Originally Posted by djr33 View Post
    But spoofing only applies when someone is trying to get around something
    Think legacy. That's the whole point of this in the first place. If you are bothering to accommodate legacy browsers, consider legacy adaptations as well. There was a time when IE 6 was king. In those days folks adapted other browsers to spoof IE 6 in order not to be excluded from sites that required it.

    Since then much has changed, but not in some cases (probably in a significant number of cases), the settings of those non-IE browsers.

    Personally I can go either way on the issue of whether or not to accommodate IE 6, it would depend on a lot of considerations - basically on the site itself and its target audience/how dedicated it was to being accessible, etc. - probably also other considerations I'm not thinking of at the moment.

    But if you want to go down the road to be IE 6 accessible in the spirit of supporting legacy systems, I think you should go all the way and do it in such a fashion that doesn't restrict accessibility to others who may have non-IE browsers set to spoof IE.

    I'm dancing around this really. The bottom line is (and this applies to a much wider set of decisions involved in presentational coding) - Use methods that are documented and supported as a part of the software that you are targeting. In this case conditional comments as opposed to the navigator object or the navigator object as interpreted by PHP.

    If you use documented and supported methods as opposed to 'what works in most cases', you don't have to come back later and revise things or worry about any user agents that might slip through the cracks or get served inappropriate content. That's aside from and above and beyond taxing the server for what can be (in this case) a very low load client side branching technique - conditional comments.

    I'm all for using the server when it is the most efficient approach. I don't believe it is here.

    All that said, I'm not so much invested in this to really care all that much. Do whatever makes you happy.

    What really pleases me in all of this though is that we can now truly say that IE 6 is, or at least is fast becoming, a legacy browser.
    - John
    ________________________

    Show Additional Thanks: International Rescue Committee - Donate or: The Ocean Conservancy - Donate or: PayPal - Donate

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •