views:

189

answers:

3

We are a bit desperate... We have launched our website http://www.buscounviaje.com

We tested all browsers (IE6-8, Firefox, Safari, Chrome, ...) to make sure everything was OK. However, there are some users (IE7 and IE6) that are complaining that they see everything 'white' with black letters (i.e. CSS styles not being applied). One user said he was getting an "Error 0: Object expected"

However, we do not see that error in Firebug, nor on our local installations of IE6&7. Other users with IE6&7 are also visualizing the web correctly. We have no idea where the problem could be, and we cannot test it because our IE6&7 work fine.

Anyone sees the web page without styles and give us a hint on where the problem might be?

Reasons we can think of...

  • we are compressing js and css and some versions of IE6&7 are not able to decompress them
  • we are trying to use a non-existing object in javascript and some versions of IE6&7 do not like it
  • the cache does not seem to be the problem... we guided a user through emptying his cache and he could still not see the web site correctly.
A: 

Probably this:

@charset "UTF-8"
Coronatus
Where do you see that?
the_drow
Sorry... I am not sure what you mean... Can you give me more info? Is that something that you think we should add to our code?
Ra y Mon
It is already in your CSS. If you don't even know what your CSS looks like, no wonder you can't build a site.
Coronatus
You know, sometimes a project involves more than 1 person, and not all of them know all the code. This is one of those cases...I was hoping you could give me some more info about that 'Probably this: @charset utf-8' so I can point the person working on the CSS in the right direction...
Ra y Mon
A: 

Object expected usually means that you are trying to use an undefined variable. (Something not implemented in IE? Or a race condition?) That would stop JS execution, but it wouldn't mess up the styles in itself.

Tgr
The styles are not being applied, so maybe the 'object expected' is not really the source of the problem... The strange thing is we do not see that error when debugging on our own IE7
Ra y Mon
+1  A: 

One of the points in my list of thoughts below (which I wrote first) likely illuminates the script error.

As for the failure to apply the stylesheet, I'm definitely on board with the idea that it's down to the compression. XP prior to SP2 has a way of choking on compressed CSS and JavaScript; strong Google-Fu led me to a properly documented solution for the CSS/JS compression problem in Apache.

Recommended steps: remove the charset declaration from your stylesheets, and apply the linked solution in your httpd.conf file.

A few more thoughts:

  1. @charset declarations tend to be' buggy as all get out. I could go into more detail about the whys and wherefores of document encoding, but this isn't the time or the place. Bottom line: there are other, more reliable ways to get high-bit characters into your stylesheets and pages. Use them.
  2. The site in question runs Apache, which supports transparent gzip encoding of pretty much everything that isn't an image, on-the-fly and out of the box, and any browser you're actually going to support will know what to do with the results. Why are you relying on an entirely separate feature, and have you properly configured the server on account of the odd implementation?
  3. You will from time to time discover that someone is running a different version of the JScript interpreter than the one in your testing profile for a given browser. This happens either because the user hasn't applied updates, or because they downloaded some widget from Microsoft that included an updated interpreter.
  4. XP MCE handles plug-ins (vis a vis ActiveX, which is the under-the-hood API used for instantiation, rendering, and playback) differently than other contemporary Win32 operating systems, and I've seen all manner of JavaScript errors in that environment that I can't reproduce in other versions of Windows.
  5. You'll surely want to test this on your own, but IE8 in Standards Mode (i.e., the result of your doctype declaration for IE8 users) ignores conditional comments altogether. I mention this because I saw <!-- [if IE8]> in your link tags.
Ben Henick
Thanks a lot Ben, I'm going to look into this with the people who prepared the CSS and the guys in charge of Apache
Ra y Mon