It’s probably because the default padding on the button is different in various browsers. You could try:
button{padding:0}
However the text in the “Return to the 1981 Homepage” button is almost at full width and some browsers may render the text longer than will fit on one line so you could lengthen the button a little more.
Or perhaps use a min-width (IE7+) e.g.
button{width:auto!important;min-width:200px}
The !important is needed because you have used inline styles and only !important will over-ride them.
You could have just added some padding top and bottom back into the rule as it was the horizontal padding extending the button:) However the min-width should do what you want anyway without changing the default padding.