Search code examples
htmlcssborderimage

Strange border on IMG tag


HTML:

<html>
<body>

<header>
    <img class="logo" />
</header>

</body>
</html>

CSS:

* {
    margin:0px;
    padding:0px;
    border:none;
}

img.logo {
    width:126px;
    height:50px;
    background-image:url('images/logo.png');
}

One way or another everytime i try to style an IMG like this a strange border appears. Even if I would place border:0px; or border:none; in the img.logo css the border remains.


Solution

  • It's the default "special" border that appears when you use an img element with an a src attribute set to something that doesn't exist (or no src at all).

    A common workaround is to set the src to a blank.gif file:

    <img class="logo" src="blank.gif" />
    

    I have to point out that it (in this case) makes no sense to use an <img> with background-image. Just set the src attribute and forget about background-image.