почему внутренний div плавает, если он не нужен, просто центрируйте внутренний div?
.inner {
margin:10px auto;
border:1px solid #898989;
padding:4px;
width:200px;
background-color:#f2f2f2;
}
ИЛИ, если inner плавает, так что он содержит дополнительные float ... тогда вы можете добавить переполнение, скрытое к нему
.inner {
overflow: hidden;
margin:10px auto;
border:1px solid #898989;
padding:4px;
width:200px;
background-color:#f2f2f2;
}
или вы можете превратить внутренний элемент во встроенный блок - и обернуть его в div с помощью text-align: center;
<div class="outer">
<div class="inner"><span>float</span>the inner text</div>
<div class="inner"><span>float</span>the inner text</div>
<div class="inner"><span>float</span>the inner text</div>
<div>
.inner {
display: inline-block;
margin:10px;
border:1px solid #898989;
padding:4px;
width:200px;
background-color:#f2f2f2;
}
.inner {display: inline !ie7;}
span {float: left; width: 50px; height: 50px; background: #ffe;}
.outer {text-align: center;}