まず、ナビゲーションアンカーが浮かんでいます。ブロックのような構造を維持するために、どこでクリアを行っていますか?これが、IE7でナビゲーションが壊れている理由です。
IE 7はCSSでn番目の子をサポートしているとは思いません。これは、Jqueryを使用して行うか、コンテンツを中央に配置するテーブルセルにクラスを追加する必要があります。
お役に立てれば
汚物
/ **ここで更新された回答***** /
ここで「クリア」フロート要素について読む価値があると思います
IE 7および6は完全なB&#@ Hであるため、ブラウザーのようなこれらのスカムに対応するために、他の方法で必要なものを開発できる必要があります。それで、これがあなたの「nav」cssとhtmlが現在の標準に従ってどのように見えるべきかについてのJsfiddleです。
また、 「クラス」ではなく「 id 」をいつ使用するかをブラッシュアップする必要があると思います。この場合、HTML内に「 nav 」を1つだけ含める必要があるため、これにIDを付けます。それはユニークだからです。
インラインナビゲーションが必要な場合は、「li」要素をフロートさせ、ナビゲーション後に「 ul 」にクラス「 clearfix」を追加してそれに応じてスタイルを設定することにより、クリアを行うのが最善だと思います。
「クリア」の簡単な例として、段落を含むナビゲーションの後にdivがあります。「 nav」からクラス「clearfix 」を削除すると、「paragraph 」が「 nav 」と一致して表示されます。したがって、これがすべてのフロート要素をクリアすることが重要である理由です。
テーブルのセンタリングの問題については、すべてのブラウザとモバイルデバイスに対応できるため、私が提供したJsfiddleが最適なルートです。