Тэги кнопок всегда мешают правильно оформить кросс-браузер.Пока вы используете javascript для onClick, нет никакой реальной причины использовать тег кнопки.Попробуйте использовать тег привязки, нацеливаясь на все состояния и устанавливая положение изображения.
<a class="join" href="#" id="register" onClick="window.location = 'location'" tabindex="4">Button</a>
a.join:link,
a.join:visited
a.join:hover,
a.join:active
{
background: url(../images/join.png) 0 0 no-repeat;
border: 0;
text-indent: -999em; /* Optional - To remove the HTML text from the button */
height: 56px;
width: 178px;
cursor: pointer;
}