正方形の要素の周りにいくつかのコンテナー div を追加し、ディスプレイとテキストの配置をいじって、純粋な CSS でそれを行いました。ここでデモを見る
HTML:
<div id='container'>
    <div id='outline'>
        <div class='innerbox'></div>
        <div class='innerbox'></div>
        <div class='innerbox'></div>
        <!-- As many as you want -->             
    </div>
</div>
CSS:
#container {
    width:100%;
    text-align:center;
}
#outline {
    text-align: left;
    display: inline-block;
    /* for ie6/7: */
    *display: inline;
    padding:5px 5px 0px 5px;;
    border: 1px black dashed;
    zoom:1;
}
.innerbox {
    display:inline-block;    
    margin:0 auto 0 auto;
    height:50px;
    width:50px;
    background:red;
}
以下のコメントに基づくメモ
ボックスが複数の行を占める場合、右端のボックスとそのコンテナーの右の間にスペースがあります。ある種の JavaScript がないと、この小さなスペースを完全に削除することは不可能です
JavaScriptを使用して完全な機能を追加するために編集
これは、javascript と jQuery を使用して完全な機能を実現しようとする私の試みです: demo here。追加された s のためにウィンドウサイズを縮小すると、まだグリッチが発生し<br/>ますが、修正を探します。回答に加えて、コードが一部のユーザーに役立つ可能性があります。ただし、私のソリューションはあなたのものよりも少し一般的だと思います。適切なアイデアを得るお手伝いができれば幸いです。
後で追加された純粋な JavaScript バージョン
これが、この目的の私の最新バージョンです。純粋な JavaScript であり、コンテナの必要性をなくし、ハードコードされたパディング値を削除します