Fortunately, Internet Explorer 7 supports border-color: transparent, but
still, there are hardcore IE6 users and it seems that they will never update
their browsers.
This post is targetted to the developers that care and dare to make their
websites crossbrowser.
Thanks to a less known Interner Explorer CSS filter, the transparent border
in Internet Explorer 6 can be easily achieved. Consider the following lines of
CSS code:
.testDiv
{
width:
200px;
height: 200px;
border: solid 10px transparent;
}
It works correctly under Internet Explorer 7, FireFox, Opera and Safari,
while Internet Explorer displays a solid black border around .testDiv. To put it to work with
IE6, we will create another rule, that is visible only in version 6 (the
*html hack) with
just two lines of code:
*html
.testDiv
{
border-color: pink;
filter:
chroma(color=pink);
}
… And voila! The ugly black border around .testDiv magically
disappears.
The final things you should have in mind before using this trick is the color
(both border and chroma color) in the hack. Make sure you apply a border-color
(and respectively use it in the chroma filter) that is not used in that div, as the chroma
filter displays a certain color of the object and its content as
transparent, i.e. if the border-color in the hack is orange, and the text in
your element is orange as well, it will disappear when the orange chroma filter
is applied.