表示されている問題は、クリア要素が間違った場所にあるために発生します。
CSS を検討してください。
h1 {
margin: 0;
float: left;
background: red;
text-indent: -9999px;
border: 1px dashed cyan;
}
nav {
height: 44px;
margin: 0;
float: right;
background: black;
border: 1px dashed cyan;
}
.group:after {
content:"x";
display:table;
clear:both;
background-color: cyan;
}
h1左にフロートnavし、右にフロートすると、pブロックにテキスト (フロートではありません) が表示されます。
前に指摘したようにルールをp追加しない限り、コンテンツは期待どおりに 2 つのフローティング要素をラップします。clear:bothp
clearing 要素は、要素の後navに DOM に表示する必要があります。
この例では、ブロックの子であるブロックの後に表示されるコンテンツを生成する に適用.groupします。navulnav
nav高さを に設定しauto、さまざまなブロックの端を表示するためにいくつかの境界線と色を追加すると、問題がより明白になります。
デモを参照してください: http://jsfiddle.net/audetwebdesign/9nGQy/
問題は次のように表示されます。

ブロックx内に表示されるクリア要素の生成されたコンテンツのスポットをマークするを追加しました。nav