I don’t know why that if() test is written like that, and I suspect that’s causing trouble. As I read the code, it’s looking for ‘Gecko’ inside the string returned by the statement true == $_SERVER...
, which is going to be “1”, not the actual user agent. I suspect what we’re trying to avoid is the whole problem with strpos returning 0 for “string found at 0th character” vs. strpos returning false for “string not found.” Try this:
<?php if (strpos($_SERVER['HTTP_USER_AGENT'],'Gecko')!==false) { ?><link rel=stylesheet type="text/css" href="<?php bloginfo('stylesheet_directory'); ?>/style.css">
<?php } else { ?>
<link rel=stylesheet type="text/css" href="<?php bloginfo('stylesheet_directory'); ?>/style-ie.css">
<?php } ?>