Supporting Internet Explorer in a Post-Internet Explorer World

bbassett

As technology evolves, Internet Explorer does not. Even the latest iteration of IE, now known as Edge cannot support tons of features that just about every other browser can (and that includes browsers like Yandex that I didn't hear about until I started my trek into heavy browser testing).

I work for Kent State University. Recently we launched a brand new version of our website. As the time of launch approached, problems started to pop up, and a majority of them centered around Internet Explorer. If I had my say, which I don't, I wouldn't bother supporting Internet Explorer. Our website would still work on every version, but it wouldn't look very nice. Our redesign called for fancy shapes and cutouts all done with SVGs. SVG's are the future of web graphics. Their low file-size and masking abilities make them amazing. Some beautiful things can be done with SVG's. 

It wasn't much of a surprise when we discovered that all the time and effort we put in to making our website look pretty, didn't display correctly on Internet Explorer. Well, it was surprising because we paid a design firm the big bucks to create the shell of the site. Our task was to fit all of our drupal site into their code. We imagined that they browser tested, but that must not have been in the contract.

Either way, something had to be done so that on launch day, anyone still using Internet Explorer would be able to view our website in all it's glory.

SVG's were not the only problem in IE, but because they are the majority of what I fixed, that is what I will cover. I created a module that uses strictly javascript and drupal hooks to first detect the usage of IE, and then replace elements or add classes, etc, so they look right on IE. 

Our website is massive, so my module works together with AdvAgg making it possible for every element to display correctly.

I'll explain the problem, the process of figuring it all out, and end with why IE either needs to go, or get up to date.

I'll show primarily IE 10, with a surprise being that I got everything to work even in IE 9!

People can show up with a basic knowledge of web development. 

Session Track

Coding and Development

Experience Level

Intermediate

Drupal Version