Browsing Posts in Internet Explorer

I'd imagine a somewhat wide applause echoed from the front-end community when Microsoft announced in Jan 2015 that they were working on a ground-up new browser codenamed Spartan.

Over years Internet Explorer has developed a stigma amongst front-end developers. Microsoft made some attempts in IE10 and IE11 to align itself with already adopted W3C standards but decades of slow decay from wider internet standards contributed to the browsers lack of adoption amongst a rapidly evolving, standards compliant set of Webkit/standards based browsers.

Perhaps, the best news for me is the decision to use the Webkit engine. In some respects it's not the browser necessarily that limits front-end development, but the rendering engine. Spartan now joins the likes of Chrome and Safari in adopting Webkit. To be honest, all browsers should just adopt Webkit so more focus can be applied to generating amazing new content rather than working on x-browser compatibility issues.

Browser Engine
Chrome Webkit (-webkit)
Safari Webkit (-webkit)
Spartan! Webkit
Firefox Gecko (-moz)
Opera Presto/Blink (-o)
Internet Explorer Trident (-ms)

Came across this one today. A DOM element had CSS3 border-radius: and box-shadow: attributes applied to it. Worked perfectly in everything except good old Internet Explorer, specifically IE9.

Turns out the reason for my ugly looking border-radius: and box-shadow: effect (instead of my nice smooth, anti-aliased shadowed corners) was because a legacy filter: dropshadow(color=#e0e0e0, offx=0, offy=1); attribute had been applied to affect/hack the newer CSS3 text-shadow: attribute for IE8.

Turns out, as of IE9, most of the filter: attribute methods on MSDN are officially deprecated.

Simply removing this attribute and replacing it with the newer, CSS3 standards based, text-shadow: attribute corrected my hideous looking, black rounded corners/box shadow effect in IE9.

Not sure if anyone else is looking to solve this, but hope it helps in some way.


Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /homepages/24/d152177141/htdocs/techblog.tonycollings.com/wp-content/plugins/code-highlighter/geshi.php on line 2147

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /homepages/24/d152177141/htdocs/techblog.tonycollings.com/wp-content/plugins/code-highlighter/geshi.php on line 2147

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /homepages/24/d152177141/htdocs/techblog.tonycollings.com/wp-content/plugins/code-highlighter/geshi.php on line 2147

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /homepages/24/d152177141/htdocs/techblog.tonycollings.com/wp-content/plugins/code-highlighter/geshi.php on line 2147

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /homepages/24/d152177141/htdocs/techblog.tonycollings.com/wp-content/plugins/code-highlighter/geshi.php on line 2147

Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in /homepages/24/d152177141/htdocs/techblog.tonycollings.com/wp-content/plugins/code-highlighter/geshi.php on line 2147

Huh! This is an interesting dilemma I came across today. Take some fairly standard PHP export script:

  1. span style="color: #ff0000;">"Content-type: application/vnd.ms-excel""Content-Disposition: attachment; filename=some-filename.xls");
  2.  

... set some headers and print($sMyCSVFile);. Well NOT so much with Internet Explorer. Works perfectly with everything else.

Turns out that there is a known issue opening documents over SSL with Internet Explorer. (MSDN Article: 316431) and it's all to-do with caching! If EITHER of the following headers exist then the script will fail:

  1.  

The answer; it turns out, is relatively easy. Simply set :

  1.  

.. Voila! There are also some nice examples of forcing file-download on php.net (http://us3.php.net/manual/en/function.readfile.php)


Further Reading:

  • Page
    of 2
  • Next