Category Archives: Web

IE9 vs. WordPress’ Twenty-Ten

As usual, the first thing I tried after installing the Internet Explorer 9 beta last week was to see how it handled all of my websites. It does just fine with everything except this one. It shifts the header image off to the right. This is particularly odd because it’s just the standard Twenty-Ten theme that’s the default for WordPress 3, customized with one of my own photos.

Oddly, it was just fine in the last IE9 preview. Even stranger, the sample 2010 page looks just fine. It’s not my customizations, though. I’ve checked on two other locally-installed WP sites.

There’s a short discussion thread at the WordPress forums, and a bug report. As of today, it’s marked as fixed, but here’s the question:

Is it worth fixing in WordPress?

I haven’t found any indication as to whether this is a bug in the IE9 beta or a deliberate change. If it’s a deliberate change, it’s an odd one, because it takes behavior that used to be the same as every other web browser out there and changes it to something different. If it’s a bug in IE, though, that’s where it should be reported and fixed, not in just one of the sites affected.

That said, I’m probably going to try the workaround on at least one of my sites the next time I get on a machine with IE9.

Posted in Web Design | Tagged , , | Leave a comment

Don’t Block Internet Explorer

Apparently there are websites out there that are redirecting Internet Explorer users to the Alternative Browser Alliance. This is, IMHO, both counter-productive and counter to the open spirit of the web.

For all the same reasons that you shouldn’t block visitors using Firefox, Safari, Chrome or Opera, or anything else unless there’s an actual, genuine technical reason (and unless you’re doing serious multimedia that has no fallback option, there is rarely a genuine technical reason), you shouldn’t be blocking visitors using Internet Explorer…

Because you’re not going to change them. You’re just going to make them angry.

They arrived at your site looking for something. Slapping them in the face and sending them off to another site is not going to get them to change their behavior and come back. It’s just going to make them look somewhere else for someone offering the same thing who won’t make them jump through hoops.

Case Study

Last week I received a message through the Alternative Browser Alliance’s contact form asking, “What does this have to do with cpanel?” I wanted to reply, “Nothing, why do you ask?”…but the person who asked the question hadn’t left an email address, just the name “King Kong.”

(Tip: If you want an answer to a question, give people a way to contact you!)

So I checked the server logs and saw that he(?) had arrived on the Why Alternative Browsers? page and had left no referrer. Great, another dead end.

I was ready to write it off as spam, but then I decided to search the logs for cpanel, and found several hits referred by a cpanel tutorial. I visited the page and didn’t see any links to my site, but when I looked at the source, I spotted this script:

if(navigator.userAgent.indexOf("MSIE")!= -1)
{
   window.location = "http://www.alternativebrowseralliance.com/why.html";
}

Wow. They just redirected all IE users with no explanation — not even pointing out that they were being shunted off to another website! Imagine opening the front door of a computer repair shop and walking inside to find a political activist’s office instead!

Presumably “King Kong” had searched for cpanel, followed a link to this tutorial, and found himself looking at a page about alternative web browsers. No wonder he didn’t leave a contact address. He didn’t want an answer. He was angry and blowing off steam — at me, for something that someone else did.

And did badly, I might add: Three of the five visits I could actually identify in the logs claimed to be Opera Mini, not Internet Explorer. I don’t recall whether Opera Mini can masquerade as another browser (the current Android version doesn’t offer the option, but this claimed to be an older Java version), but the desktop version certainly can. Older versions of Opera used to deliberately identify themselves as IE (with a tag adding that, no, actually it’s Opera), and would have been caught by this script!

The User-Agent isn’t a reliable indicator. It was never intended to be. If you must single out Internet Explorer for some reason, use conditional comments. That’s what they’re designed for.

If what you want to do is block IE visitors, though, think about what you’re really accomplishing. And please, don’t just silently shove the “problem” visitors onto someone else.

Posted in Browsers | Tagged , | Leave a comment

Links: Unconventional Art, Private Browsing, Scott Pilgrim

Some recent linkblogging. (Thank you, StumbleUpon)

Art

Privacy

Scott Pilgrim

Posted in Entertainment, General, Web | Tagged , , , , , , | Leave a comment

Protecting Firefox from Farmville

Firefox has been testing a new release that detects and closes crashed plugins (instead of letting them crash Firefox entirely) for several months, carefully making sure everything was working before they released Firefox 3.6.4 last week.

Within days, they released an update. I couldn’t imagine what they might have missed in all the beta testing. Katie wondered if the beta testers hadn’t been testing the limits.

You want to know what convinced Mozilla to issue an update so quickly?

Farmville.

Apparently Firefox was detecting Farmville as frozen and closing it. It turns out that on many computers, Farmville regularly freezes up the browser for longer than 10 seconds, and its players just deal with it and wait for it to come back. Mozilla decided that the simplest thing to do would be to increase the time limit.

What this tells me is that the type of person willing to beta-test a web browser these days is not likely to be playing Farmville — or if they are, it’s likely to be on a bleeding-edge computer that can handle it without 10-second freezes.

In more practical terms: Mozilla needs to convince a wider variety of users to help test their software!

Posted in Mozilla | Tagged , , , , | Leave a comment

Check Your Plugins!

We can check your plugins and stuff

It’s a safe bet that your web browser uses at least one plugin, and probably several. Maybe it’s just Flash for viewing animations and video (think YouTube and Hulu). Maybe it’s Silverlight for watching Netflix, or Shockwave for playing games. You’ve probably got Java installed.

Just like your web browser, these plugins must be kept up to date or you’ll run into problems: missing features, instability, or (worst case) security vulnerabilities. Unfortunately, most plugins don’t update themselves.

Several months ago, Mozilla introduced a service called Plugin Check that will identify the plugins you have installed and tell you whether they need to be updated — and how to do it. At first it only worked on Firefox, but now it’s been expanded to all major browsers: Chrome, Safari, Opera, and even Internet Explorer.

It’s worth taking a few moments to check. Think of it as a pit stop for your computer’s web browser.

Posted in Browsers | Tagged , , , , , , , | Leave a comment

Webkit display:table-cell Problem

I recently tried to retrofit a mobile layout onto an old table-based site using CSS. It was a fairly simple layout: A banner across the top, two columns, and a footer. I figured I’d use CSS to “unwrap” the table and make the sidebar and main content area into full-width sections instead of side-by-side columns.

In theory this should be simple: CSS handles tables by using the display property and assigning it table, table-row and table-cell for the <table>, <tr> and <td> elements. You can assign these properties to other elements and make them act as tables, or you can assign block or inline to these elements and make the table act like a series of paragraphs.

Initial testing worked perfectly in Firefox 3.6 and Opera 10.5x. Internet Explorer 8, as expected, ignored the changes entirely. Chrome, however, did something very strange, and Safari reacted the same way: The banner shrank, and the columns changed from a narrow sidebar to a 50/50 split…making it actually worse for small screens.

Clearly WebKit didn’t like something I was doing. Unfortunately, WebKit powers the exact platforms I was targeting: the iPhone and Android!

I dug around with the developer tools a bit to see if I could figure out what was going on. Was the browser not applying the property? Were the table cells inheriting the “original” property from somewhere else? Did I need to change properties on thead and tbody as well?

What I found was that WebKit did recognize the display:block I had added, but somehow the computed style was reverting to display:table-cell. This only applied to table and td, though. Table rows actually did what I told them to, which was why the result ended up looking bizarre.

If it hadn’t changed anything, I probably would have chalked it up to the capability just not being implemented yet. But since it worked on table rows, but not on cells, I decided to treat it as a bug in WebKit and went looking for the best way to report it. I ended up creating a WebKit Bugzilla account and reporting it as bug 38527.

Check out the testcase
in Firefox 3.6 or Opera 10.5 to see what it should look like, then take a look in Chrome 4 or 5 or Safari 4.

Posted in Web Design | Tagged , , , , , , , | 5 Comments

Comic-Con Hotels 2010: Reviewing the Reservation Form

It was fast. Anticlimactic, really. It took a few reloads to get the Comic-Con International home page up, but once I could click on the reservation link, everything went smoothly. I was done by 9:05.

The reservation page was actually optimized!

  • Just one image: a banner across the top.
  • Everything was on one page, including the list of hotels, the personal info, and the hotel choices.
  • Hotel selection was done by client-side scripting, so there was no wait for processing between selections (and no risk of typos confusing their processing system later today).

This is a huge deal, especially compared to Travel Planners’ horribly overdesigned 2008 forms — yes, forms, plural — that kept bogging down. (I never even saw last year’s, though I tried for an hour and a half to get in.)

On the downside, that one page does load a half-dozen script files, but that doesn’t seem to have slowed it down much.

In case none of your 12 choices were available, they asked for a maximum price you’d be willing to pay for another hotel that’s not on your list. I vaguely recall this being a feature of the old fax forms, but I don’t remember being asked this on the phone last year.

I was surprised to find that they didn’t want credit card info immediately, but that’s good from a streamlining perspective as well. The hotel choices, room type, and contact info are critical in order to make the reservation in the first place. Payment can be done later, so in a rushed situation like this, it’s better to handle it later. Plus, not asking for credit card information means that they could run the site without encryption, speeding things up a bit more.

I would have liked to have gotten a confirmation number for the request, or an email, just so that I could be sure that I was in their queue. And to be sure that I entered the right email address. And the right start and end dates. And…well, you get the idea. I’m a little paranoid about the process at the moment.

Here’s hoping that the back end of the process, and sending out confirmations, goes as smoothly as the front end did.

Update: Short answer: it didn’t. Long answer: I’ve written up what went wrong, at least from the guests’ point of view.

Posted in Comic Con 2010, Comics, Web Design | Tagged , , , , , , , | 17 Comments

E-Flashback

Yesterday I received an e-mail newsletter from WebRing. The major story: guestbooks and counters are now available.

Yes, guestbooks and counters. For WebRing.

The 1990s really are back!

Posted in Web Design | Tagged , , | Leave a comment

Case of Mondays: Usability, 2012, and Chkdsk

  • Usability question: Is it better for a form to auto-detect the credit card type from its number, or have the user select it as an error check? # (Consensus on Twitter & Facebook was to have the user select it.)
  • In case you were worried, the world will NOT end on this date (or any other) in 2012. #
  • Yay, the PC isn’t totally crashed! Grabbed a current backup & now running chkdsk. Work last week, home this week. Pattern? #
  • Chkdsk is FINALLY running. If you get a “cannot open volume for direct access” error trying to run it on Windows XP, try running msconfig and selecting a Diagnostic startup. #

Posted in Computers/Internet, Strange World, Troubleshooting, Web Design | Tagged , , , | Leave a comment

Browse-o-Smart

After a week of playing with Chrome as my main browser, I’m back to Firefox. Chrome’s fast, but sometimes too much like Breathe-o-Smart.

Me: Why won’t you show me the full (relatively long) URL of this link?

Chrome: You won’t want to look at the full URL with Chrome!

Me: But what if I do?

Chrome: Trust me, you won’t. You’ll never need a URL again.

Me: But what if I need to look at it just this once?

Chrome: Well, I suppose you could actually follow the link. Or copy it and paste it into a text editor. If you really must have the URL. Not that you’d want to, of course.

Me: Why should I have to do that just to look at a URL? *headdesk*

Posted in Browsers | Tagged , | Leave a comment