で囲まれたdivにボタンがあります<section>:
<div id="body">
<section>
<div class="area">
<button>Hello!</button>
</div>
</section>
</div>
#body、その幅<section>は固定で.area、50px のパディングがあります。
#body{
width:600px;
margin:0 auto;
background:#eee;
}
section{
width:300px;
margin:0 auto;
background:#FFF;
}
.area{
padding:50px;
}
button {
display: block;
margin: 0 auto;
}
すべてが私のモニターで行われ、ボタンは完全に中央に配置されています。ただし、iPad では左にシフトします。

このケースを実際に見ることができます: http://jsfiddle.net/c2HLe/