Nik's Technology Blog

Travels through programming, networks, and computers

IE6 – Why Web Developers Should Support the Browser

There seems to be so much fuss surrounding support for aging Microsoft browser Internet Explorer 6 lately, both from the web developer community and big corporations such as Google and Facebook. There are many websites dedicated to eradicating the browser, a Twitter petition, a joke campaign to save IE6 and a whole lot more…

While I don’t particularly enjoy spending a considerable amount of time per project making sure websites I build are IE6 compatible, I do see the benefit of supporting the browser.

I was in Google Analytics recently and looked at my browser statistics for this site.  Visitors to my site are fairly IT literate but Internet Explorer 6 still has a larger user base than Safari, Chrome and Opera with almost 9% share. Looking on the W3C Schools browser statistics, 12.1% of their users browsed the web with IE6 in September 2009.

NikMakris.com Web browser market share Sept 2009

Web browser market share

NikMakris.com Internet Explorer browser share Sept 2009

Internet Explorer browser versions

I could make the decision not to support IE6 for my personal site and about 9% of my visitors would be affected, but if I made that decision on a commercial website, I could end up losing out on business, especially since many of the people still actively using IE6 are businesses or public sector organisations who can’t easily upgrade or install an alternative web browser.
Many organisations also have legacy applications that do not work with new versions of Internet Explorer and during a recession many organisations will avoid spending money on upgrades and new software if they can afford not to.

Whilst it might be okay for Google and Facebook to block support for the browser when you visit their own web properties, would a client of yours be happy if you did the same with a website you built, potentially losing them business?

Internet Explorer 6 may be a dog of a browser in 2009, if you’re a web developer it probably causes you hours of pain creating dedicated style sheets and conditional statements.  You may even have had to make major template changes to deal with the many quirks of the browser rendering engine, but hopefully in the not too distant future it will become such a small percentage of the web browser market that we can all forget about it and start concentrating on new technologies such as HTML 5!

ASP.NET Content Disposition Problem in IE7

I've just spent quite a while debugging a problem with content disposition I was having with Internet Explorer 7, the code works fine in Firefox but causes this error message to occur in IE7.

"Internet Explorer cannot download xxx from xxx."

"Internet Explorer was not able to open this Internet site.  The requested site is either unavailable or cannot be found.  Please try again later."

content-disposition-error

This was my original snippet of C# code:

Response.Buffer = true;
Response.ClearContent();
Response.ClearHeaders();
Response.ContentType = docToDisplay.Type.ContentType.ToString();
Response.AddHeader("Content-Disposition", "attachment;filename=" + Server.UrlEncode(docToDisplay.FileName));
Response.Cache.SetCacheability(HttpCacheability.NoCache);

Response.BinaryWrite(docToDisplay.FileContent);
Response.End();
Response.Flush();
Response.Close();

Response.Cache.SetCacheability

I eventually figured out that the following line on code was causing the issue.

Response.Cache.SetCacheability(HttpCacheability.NoCache);

I then did a quick search for "Response.Cache.SetCacheability(HttpCacheability.NoCache);" and discovered another developer who have had the same Content-Disposition issue.  Unfortunately for me that page didn't get returned when I was searching for the Internet Explorer error message.

This was the response to the post by Microsoft Online Support:

"Yes, the exporting code you provided is standard one and after some further
testing, I think the problem is just caused by the httpheader set by
Response.Cache.SetCacheability(HttpCacheability.No Cache)
I just captured the http messages when setting and not setting the above
"NOCache" option and found that when the http response returned the
Cache-Control: no-cache
header. So we can also reproduce the problem when using the following code:
page_load...
{
Response.CacheControl = "no-cache";
ExportDataGrid(dgSheet,"test.xls");
}
IMO, this should be the clientside browser's behavior against "no-cache"
response with stream content other than the original text/html content. So
would you try avoid setting the CacheAbility or the "Cache-Control" header
to "no-cache" when you'd like to output custom binary file stream?
Thanks,
Steven Cheng
Microsoft Online Support"

After removing the Response.Cache.SetCacheability line the file downloads correctly in Internet Explorer.

How to get the BBC iPlayer on your Nintendo Wii

You can now get the BBC iPlayer on the Nintendo Wii games console!

Before you can start watching programmes broadcast on the BBC over the last 7 days you'll need to connect your Wii console to the Internet (see instructions below) and download the Opera web browser from the Wii Store (Which costs 500 Wii points or about 3.50 Pounds Sterling).

Before you can buy Wii points to purchase the Opera web browser you'll first need to register online at www.nintendo-europe.com and "link" your Wii console to the Nintendo account you just created online, Nintendo have a guide on how to link your Wii Shop Channel Account to your Club Nintendo Account.

Once you've linked your account to your Wii console you need to go to the Wii Shop accessed from the Wii Home Menu on the console and purchase (by using a credit or debit card to buy some Wii points) and download the "Internet Channel".

Once downloaded and installed you're ready to go!

From the Wii Home Menu select "Internet Channel" and navigate to www.bbc.co.uk/iplayer, you can then use your Wii remote to zoom, pan and scroll around the web and the iPlayer.

You can read more info about the BBC iPlayer on the Wii console at BBC Internet Blog.


To connect your Nintendo Wii console to the Internet with Wi-Fi follow these steps:

  1. Go to the Wii home menu
  2. Select "Wii options" on the bottom left
  3. Click on "Wii settings" on the right
  4. Click the right arrow
  5. Select Internet
  6. Click "Connection Settings"
  7. Select "Connection 1"
  8. Choose "Wireless Connection"
  9. Select "Search for Access Point"
  10. Click "Ok"
  11. You should be presented with a list of local wireless routers, select your wireless router from the list
  12. If your wireless router is secure, you'll be prompted to enter your Wi-Fi password
  13. Click to save your connection settings
  14. Click "Ok"
  15. The Wii will now test your connection and then prompt you to perform a system update, click "Yes"
  16. Return to the Wii menu when prompted

Use Browser Toolbar instead of Address Bar to Avoid Phishing Sites

I've just read a post over at Search Engine Journal about statistics from Hitwise UK suggesting British users are increasingly using browser toolbars to search for domains they know already like tesco.com rather than typing them directly into their browser address bar.

I use this technique a lot because I frequently misspell a domain name or get the wrong domain extension for a website. When this happens more-often-than-not you get a holding page, cyber-squatter site, or worst still a site that attempts to mimic the intended destination in order to "phish" log-in details.
When you use a search toolbar to navigate to a domain the top search result is most likely going to to be the real domain.

Time to start testing your websites in Safari on Windows?

Apple recently added their Safari web browser to the Apple Software Update and pre-checked the box by default. This effectively means that a lot of Windows users will now, possibly without knowing it, have installed Safari.
I'm not going to discuss the ethics of this practice here, instead read John's Blog - CEO of Mozilla.

But what it means for the humble web designer or developer is that we should really be installing Safari on our Windows machines and adding it to the list of browsers we test our sites against as the number of users is bound to increase as a consequence.

Apple pushed Safari web browser through their Apple Updates service

Competition in the browser business is good and over the last few years Firefox has begun to gain ground on Microsoft's Internet Explorer domination. It has also forced the browsers to become more standards compliant, thereby helping web developers and designers design cross-browser, cross-platform web pages.

According to Apple, Safari is a standards compliant browser built on the open source WebKit project, so hopefully if your pages have been built to W3C standards they will require minimal checking, but it is always wise to test. Apple have a range of web developer resources for the Safari browser, including the Safari CSS support, Safari developer FAQ, and a general web development best practices guide.

Web Browsers For Web Developers

A couple of years after the release of Internet Explorer (IE) version 6 and it's starting to feel dated. The competition (Mozilla, Opera, Safari) have superceded any advantage IE had over them with features such as tabbed browsing, pop-up blocking and built in multi-search toolbars. Microsoft's announcement of future revisions being shelved is another nail in the coffin for IE.

XP Service Pack 2 recently introduced a much-needed pop-up blocker for Windows XP users but I don't think this can save IE.

Mozilla's Firefox is gaining ground fast and I'm one of it's avid users. It's fast to load, has tabbed browsing (so you can avoid having 15 IE windows open at once), it's skinable and has a built in RSS reader and the best thing is it's FREE!

What's more it's open source meaning anyone can help in making it better.

What more could you want from your browser?

http://www.mozilla.org/products/firefox/

IE 6 Bug with Absolute Positioned Layers

How important is it that people should be able to cut and paste from your website?

Having designed a site using nothing but DIV tags instead of using a table structure to lay out a page I find that IE 6 has a problem concerning absolute positioned layers.

The pages look fine, however if you go to select a certain piece of text you'll find that it selects the whole page instead (or at least not the part you wanted to select). Frustrating or what!

After some investigation it seems that a lot of people are discovering this problem. One solution it seems is to remove the XHTML doctype from the document, this forces IE 6 into quirks mode, which renders the page differently, the error disappears, but it stops the page from validating. Solution? I don't think so!

The other solution is to avoid using absolutely positioned elements and use relative ones instead. Surely we are trying to progress website design not hinder it.

I have yet to find a proper solution to the problem or find out if and when Microsoft will fix this bug, however I did come across some javascript that appears to correct the problem, albeit a very dodgy looking hack, seems to do the trick though. The link to the hack is below.

IE 6 Absolute Position Text-selecting hack

Browsers in BT Internet kiosk phone boxes

While walking past a BT Broadband Internet kiosk I was intrigued to find out what browsers they used. This is useful if you are a web developer, since you want to make sure websites you design work on as many platforms as possible.

After surfing to nikmakris.com and navigating with the TAB key (since the tracker ball wasn't working) I was pleasantly surprised on the speed and usability.

I guessed that they were using a form of Internet Explorer, partly because I know what my site looks like on IE compared to Mozilla and Netscape etc.

On checking my web logs I confirmed my earlier suspicion that BT Broadband phone boxes use IE. In fact they use Internet Explorer 6 on a Windows NT 5.1 platform, (which I believe is Windows XP) they have Javascript enabled and except cookies and with screens of resolution 800x600 and a colour depth of 16, they are more than capable of viewing most sites.