views:

288

answers:

3

Hi,

We're developing this ASP.NET web app with multiple users on different browsers. One of the users complains that the pages look funny, and after looking at the screen shot he sent, it looks like the css is not applied. According to the bug report, the user is using IE7 (but I suspect it could be IE8).

I develop in Firefox, and using the web developer toolbar, when I choose CSS --> Disable Styles --> Linked Style Sheets, I manager to recreate a page that looks a lot like the reported one.

I sent a message in return that told him to check the options under Internet Options --> General --> Accessibility, and make sure all the check-boxes where un-chekced. The reply was that they were, but that the page still looked funny.

So, the strange thing is that this app is used by hundreds of users, but I have only gotten complaints from this one user. Does anyone have any idea of what could cause the CSS to not be applied? Could it be my code, or is it some local setting in the client browser or system?

+1  A: 

Could be a very mundane file-related issue - e.g. the version you're looking at references a file that's visible to you, but not to the user. They may even be blocking that file via browser settings, purposefully or not. Have you asked them to request the stylesheet file directly and report back what they 'see'?

Other than that, could be issues relating to the markup used (e.g. bad 'type' attribute) - is your markup validating?

Also, it's obvious, but have you validated your stylesheet? Is this person the only IE7 user?

Bobby Jack
+1  A: 

Sometimes there's no substitute for actually walking over to the user and looking at his/her setup. Difficult if they're in a different location, but not impossible; use a remote access tool like Copilot.

If I had to guess in order of likelihood:

  • They've disabled/overridden application-supplied stylesheets (enough ugly backgrounds and anyone might do this)
  • They have a caching issue
kdgregory
Does CSS fail the same way javascript does? I thought the browser would simply skip lines it didn't accept. Something like "-moz-border-radius" wouldn't be accepted by IE, but it'd still read the rest of the document, right?
peirix
You're correct: it would have to be a syntax error, not simply an unrecognized definition, and that would cause all browsers to fail. Removing that bullet point.
kdgregory
+1  A: 

There's a few things to check.

Firstly, check their anti-virus / security / firewall / etc. That can randomly block all sorts of things.

Secondly, there's a registry setting somewhere to disable CSS, but that'd do it for all websites.

Also, check to see if they've got a load of IE add-ons and toolbars installed. Some of them add crap to the user-agent string and it that gets too long I seem to remember IE will truncate it. This can confuse the adaptive rendering "feature" on .net 1.1 sites.

Oh, and make sure you've validated your CSS :)

Olly Hodgson