views:

19

answers:

3

Top: IE8

Bottom: IE7

alt text

How do you fix IE7 so it doesn't split my anchor into two pieces? I know display:block and float:left would solve this, but I'd rather have it be inline. This way, I can have text both to the left and right of any arbitrarily placed anchor button.

    #launchChrome {
        font-weight: bold;
        text-decoration: none;
        text-shadow: 0 1px 0 rgba(255,255,255,1);
        background: #eee;
        background: -moz-linear-gradient(center top, #fff, #cfd5e3);
        background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(1, #cfd5e3));
        border: 1px solid;
        border-color: #ccc #ccc #999 #ccc;
        -moz-border-radius: 0.4em;
        -webkit-border-radius: 0.4em;
        text-shadow: 0 1px 0 rgba(255,255,255,0.7);
        color: #666;
        font-size: 1.4em;
        padding: 0.2em 0.6em;
        margin: 0 0 0 1em;
        -moz-box-shadow: 0 0.1em 0.1em rgba(0,0,0,0.1);
        -webkit-box-shadow: 0 0.1em 0.1em rgba(0,0,0,0.1);
    }

<a id="launchChrome" href="javascript:void(0)" onclick="launch()">
            <img src="<?=base_url()?>images/spacer.gif" class="spriteChannel googleChromeSmall">
            Launch Chrome
        </a>
A: 

Why even use an image tag to begin with?

Use a non repeating background image and set a padding-left on the link so the text does cover the image.

epascarello
I'm using a tightly packed sprite - so I can't use background images. If I did, other images would also show up.
JoJo
A: 

I used display:inline-block to fix it.

JoJo
A: 

First of all close your img tag <img />.

Second - try adding zoom:1 to #launchChrome - I'm not having the exact same render problem in IE7 but it fixed it's look in both IE6/7. That shoud trigger hasLayout.

easwee