左、中央、右に配置されたフッターコンテナーDIVに3つのDIVを作成する必要があります。私が見たすべてのCSSの例では、これまでどおりフロートを使用しています。ただし、何らかの理由でDotNetNukeはCSSを正しく解析していません。左ペインが正しくフローティングしているのがわかりますが、右ペインと中央ペインは隣ではなく、すぐ下に配置されています。これが私のascxファイルからの抜粋です:
<div id="footer">
<div id="footerleftpane" runat="server">
<dnn:LOGO id="dnnLogo" runat="server" />
<h3>Driving business performance.</h3>
<h3>Practical Sales and Operations Planning</h3>
<h3>for medium sized businesses.</h3>
</div>
<div id="footerRightPane" runat="server">
<dnn:COPYRIGHT id="dnnCopyright" runat="server" /><br />
<dnn:PRIVACY id="dnnPrivacy" runat="server" />
<dnn:TERMS id="dnnTerms" runat="server" />
</div>
<div id="footerMidPane" runat="server">
</div>
</div>
これが私のCSSファイルの関連部分です:
#footer
{
width: 960px;
border: 1px;
}
#footerleftpane
{
width: 300px;
float: left;
}
#footerRightPane
{
width: 300px;
float: right;
}
#footerMidPane
{
padding:10px;
}
目的のレイアウトを実現するには、上記のどの変更を行う必要がありますか?
更新:提案された変更を試してみましたが、レイアウトはまだ機能していません このセールスアンドオペレーションプランニング.netのページで、私が何を望んでいるかを示しています 。
まず、HTMLに表示される要素の名前をターゲットにする必要があります。 CMSがなんらかの接頭辞を付加していて、IDが一致していないようです。 (#footerleftpaneがありますが、#dnn_footerleftpaneとしてレンダリングされます)
また、固定幅のコンテナーを使用しているため、中央のコンテナーに幅を渡さないことによる問題は発生しません。それに幅を与え、それが機能するかどうかを確認します。そうでない場合は、ブロックが正しいソース順序(左、中央、右)にある場合、さらに2つの方法を試すことができます。
それらをすべて左にフロートして、幅とパディングがコンテナに収まるようにします。
#dnn_footerleftpane, #dnn_footerMidPane, #dnn_footerRightPane {
width: 300px;
float: left;
....
}
Display:inline-blockを使用することもできます。また、コンテナーの幅とパディングに合わせてください。
#dnn_footerleftpane, #dnn_footerMidPane, #dnn_footerRightPane {
....
display: inline-block;
...
}
これは、位置、寸法、および間違ったcss宣言の問題です。
1)位置あなたはあなたのページソースの正しいものの後に中枠を持っています!
2)寸法簡単なテストを行い、さらに調査できますが、300pxはサイドペインの幅に対して大きすぎます。コンテンツの何かがおそらく幅を変更します。
3)css宣言DotNetNuke(実際にはすべてのASP.Netコントロールが行います)は、サーバー側コントロール(runat = "server"として宣言)をレンダリングして一意のIDを割り当てます。したがって、CSSで#footerleftpaneであると予想されるものは、#dnn_footerleftpaneになります。 。
中央のペインの位置を変更したら、他の2つの中央に、次のようにcssを変更します。
#footer
{
width: 960px;
height: auto;
margin:0;
padding:0;
border: 0;
}
#dnn_footerleftpane, #dnn_footerRightPane{
width: 290px;
float: left;
}
#dnn_footerMidPane
{
width: auto;
float: left;
}
フッターコンテナーは960ピクセルです。左と右の要素は300ピクセルですが、中央の要素の幅を指定していないため、デフォルトでその親の全幅に設定され、それ自体が新しい行にそれ自体をプッシュします。
パディングを差し引くと、中央の要素は340ピクセルを超えることはできません。
http://jsfiddle.net/y8e4T/show
#footerMidPane{
width: 340px;
float: left;
padding: 10px;
}