IE6 PNG fix (TwinHelix) not working all of a sudden..! :-(

Hi Everyone…

Let me tell you what…my website is kicking my butt!! I am unfriending IE6 officially!.

I have been using TwinHelix IE6 png fix for some time now. I am not sure what happened but it stopped working.
All the files .htc file and the blank.gif are in the root folder.
My .css file has

behavior:url(/iepngfix.htc);


But in IE6 it is not working anymore…

My website link is http://www.rajeevthomas.com

Can you help me figure this problem out please?

Thank you…

The link you posted doesn’t work but as a recommendation unless your building the site for a corporate company stop supporting IE6 as the chances of someone actually visiting your website using it is slim to none.

SgtLegend… thank you sorry I took it down to check some of my older versions. Sorry… it is working now… though I live in USA… many of my family and friends are still in India and some of them believe it or not uses older versions… but this time , png fix not working is a mystery for me… thank you…the site is up now…

Your web server is spitting up the wrong Content-Type for the .htc file. It says it’s text/plain, which causes IE6 to refuse to execute it. I had the same problem a while back, stumped me for hours as well.

Anyway, the solution for me was to put this in your .htaccess file:


AddType text/x-component htc

Then you need to delete all cache in IE6, and maybe even restart it our your PC because it holds on to the misinformation it got earlier for way too long. IE6 and it’s stupid cache …

Alternatively, switch to DD_BelatedPNG, which is in javascript and a better solution than PngFix anyway.

HTH :slight_smile:

ScallioXTX…thank you very much for your help… I thought I had that line in there but I didn’t. But it didn’t fix the problem even after a re-start. I recently added bunch of stuff to my .htaccess file… does that matter here? Can that be the reason? I am using Adobe Browser Lab to test this on IE6… may be I should try your javascript solution… thank you again…

Yes, it does send the new headers now, so it should work


Accept-Ranges:bytes
Connection:Keep-Alive
Content-Encoding:gzip
Content-Length:2073
[COLOR="#0000CD"][B]Content-Type:text/x-component[/B][/COLOR]
Date:Sat, 05 Nov 2011 11:30:49 GMT
Keep-Alive:timeout=5, max=100
Last-Modified:Sat, 05 Nov 2011 02:01:23 GMT
Server:Apache
Vary:Accept-Encoding,User-Agent

But … it’s gzipped (Content-Encoding:gzip). IE6 doesn’t like that either (yes, it’s very picky when it comes to .htc, you need to serve them just the right way …)

Try adding this to the .htaccess


SetEnvIf REQUEST_URI htc$ no-gzip dont-vary

ScallioXTX…

Thank you so much for the help…

Is there anything else I can do ? Thanks again …

On another note… I decided to give your other option a try… I downloaded “DD_belatedPNG” files… And added this to my index.php

<!--[if IE 6]>
<script src="DD_belatedPNG.js"></script>
<script>

  DD_belatedPNG.fix('#header span,.underline');
  
</script>
<![endif]--> 
#header1 span {
width:600px;
height:166px;
position:absolute;
left:10px;
top:28px;
background:url(http://www.rajeevthomas.com/photos/assets/header-1-.png) no-repeat 0 0;
behavior:url(iepngfix.htc);
}

.underline {
height:100%;
position:relative;
margin:0 auto;
behavior:url(iepngfix.htc);
z-index:1;
padding:35px 0 0;
background-image:url(http://www.rajeevthomas.com/photos/assets/underline.png);
background-repeat:no-repeat;
background-position:center bottom;
text-align:right;
width:220px;
}

Am I doing these right?

Adobe Browser Lab says I am not doing it right :eek:

Hi yathrakaaran,

The easiest way to pull up the headers is with the Firefox Add-On Live HTTP Headers. Install it, press Ctrl+Shift+L, and watch the headers scroll by :slight_smile:

gzip is sort of like zip, but a different method (algorithm). It compresses data before it’s sent over the wire so you can send less data, which is faster.

I just pulled up your site in IE6 (IE tester, not the real browser) and it gave a permission error for the .htc file. This appears to be happening because the .htc is requested from another domain than the main site (source: http://css3pie.com/forum/viewtopic.php?f=3&t=102); the .htc is requested from rajeevthomas.com, but is served on the site www.rajeevthomas.com, and IE doesn’t like that.

It’s amazing that you’ve run into three separate issues at once for this single file! Loving IE6 yet? :wink:

As for DD_BelatedPNG, you forgot to put the script type in there. It should be <script type="text/javascript"> instead of just <script>

HTH :slight_smile:

ScallioXTX…thank you for all your help… I am learning quite a bit and LOVING IE6 in the process…

Thank you for the live HTTP header add on!! So cool… so much to learn!
I just got with my ‘host’ and they are looking in to this www.rajeevthomas.com and rajeevthomas.com , I thought it is the same thing all along!!!. I am not sure …why it used to work and it doesn’t work anymore…! Yup…found my ‘love’ for IE6 in the process…:slight_smile:

<!--[if IE 6]>
<script type="text/javascript"  src="DD_belatedPNG.js"></script>
<script type=type="text/javascript">

  DD_belatedPNG.fix('#header span,.underline');
  
</script>
<![endif]--> 

I changed that but it still not showing me that it is working… am I missing something… thank you for being patient with me… like you said it is pretty amazing that I have three different issues kicking from three different directions here…:mad:

Let’s see if we can get the .htc to work now that we’re almost there :slight_smile:

Try and remove this line from your html:


<base href="http://rajeevthomas.com/" />

That should resolve the cross-domain no permission error :slight_smile:

ScallioXTX… I was just doing that as you were replying to my post!!! :slight_smile: And I just tested it on IE tester… and it shows no “permission error”… :slight_smile: Thank you so much…

But it still shows the white border on the pngs…

I just compared it to an iepngfix.htc I used on one of the sites I created, and that one seems to served as text/plain and seems to work fine (I could swear changing the Content-Type solved it back then, oh well…).
Can you please remove the AddType text/x-component htc line and see if that solves it?

If I doesn’t we will throw it away and work on DD_BelatedPNG, I promise :slight_smile:

I had to throw that away!! I did it passionately :slight_smile: So right now I have

</script>
<!--[if IE 6]>
<script type="text/javascript"  src="DD_belatedPNG.js"></script>
<script type=type="text/javascript">

  DD_belatedPNG.fix('#header span,.underline');
  
</script>
<![endif]--> 

and the .js file in root folder… is there anything else I should do? All of my .png images are background images to the elements…is that a problem?

Thank you for helping me…

The file /DD_belatedPNG.js does not exist on your domain (404 not found). Are you sure you downloaded the file and put it there, using the same upper-and lower case the original file does?

ScallioXTX…it was there I think the permissions were set wrong…now I can access it… :slight_smile:

Your page seems to be working in IE6 now.

Paul and ScallioXTX… I just checked the site in Browser Lab and it is working fine also :slight_smile: But in IE Tester it is not working… so may be it is IE Tester errors?:confused: Thank you guys for helping me… so I am not sure which of the solution is working now… :slight_smile: I will certainly find out… Paul as always …thank you for your help… :slight_smile:

ScallioXTX… thank you for sticking with this till the end…you are so helpful and knows so much more than I do! I respect your willingness to help and share your knowledge… :slight_smile:

You’re very welcome :slight_smile:

As far as IE tester goes, that bloody thing has problems of it’s own (besides that it crashes every 15 minutes …) so if browsercam says it works, I’d go with that rather than IE tester :slight_smile:

I just tested it in my virtual machine, and the www version works, but the version without www doesn’t (because it gives permission error about the htc), so it is actually the .htc at work now. Gotta love this :slight_smile:

Anyway, to make sure people don’t visit the “broken” version, put this in your .htaccess


RewriteEngine On
RewriteCond %{HTTP_HOST} ^rajeevthomas\\.com$ [NC]
RewriteRule .? http://www.rajeevthomas.com%{REQUEST_URI} [L,R=301]

Which will redirect all non-www traffic to www.

Do that, and all will be well with the world again :slight_smile:

It depends what windows version you are running IE tester in. If you run windows 7 then ie6 in ietester doesn’t show transparent pngs properly and IE7 doesn’t work properly either.

If you are running xp then ie6 - ie8 works fine in ietester but you can’t run ie9.