私はカスタムナビゲーションメニューを設計しています。これは、現在の状態でここに表示されます。個々のナビゲーション項目は次のようになります。
したがって、基本的に各ナビゲーションアイテムは水平バーから「ぶら下がっています」。画像の主要部分は、画像の3つのスライスで構成されています。
左: 右:そして真ん中:
中央のDIVの背景にはrepeat-xが適用されているため、ナビゲーションアイテムのコンテンツ、つまりテキストに合わせて大きくなります。
これは、現在、左、右、および中央のDIV用に持っているCSSです。
.left {
float: left;
width: 13px;
background-image: url(nav/images/nav_01.png);
background-repeat: no-repeat;
height:46px;
margin-left:2%;
}
.middle {
width:auto;
float:left;
background-image: url(nav/images/nav_02.png);
background-repeat: repeat-x;
font-size:20px;
font-family: Typewriter;
color:#393526;
height:46px;
padding-left:1px;
}
.right {
float: left;
width: 13px;
background-image: url(nav/images/nav_03.png);
background-repeat: no-repeat;
height:46px;
}
これまでのところ良好ですが、メインの水平バーをナビゲーションアイテム用に作成された画像に結合する垂直バーを含める方法を検討する必要がありました。これにより、常に中央に配置されます。私がそれをした方法は、次のように中央のdiv内にそれのdivを含めることでした:
<li>
<div class="nav_image">
<div class="left"></div>
<div class="middle"><div class="top"></div>home</div>
<div class="right"></div>
</div>
</li>
次に、負のマージントップを「トップ」DIVに適用します。
.top {
height:27px;
background-image: url(nav/images/top.png);
background-repeat: no-repeat;
background-position-x: center;
margin-top:-24px;
}
そして正のマージン-'nav_image'DIVへのトップ:
.nav_image {
margin-top:27px;
}
これが私が探しているものを達成するための最良の方法であるかどうかはわかりませんが、これまでのところ機能しています。
私が抱えている問題は、「nav_image」DIVの背景色を設定することです。これに色を設定し、ホバーに別の色を設定したいと思います。このDIVに丸みを帯びた角を追加し、背景画像の背後に表示される背景色を設定できることを期待していました。
現時点では、DIV'nav_image'は幅1200px、高さ0pxを示しています。3つの子DIVSの合計幅、つまり左、中央、右を継承していると思いましたが、明らかにこれは起こっていることではありません。そのため、背景色を適用するDIVがないようです。
これが明確であることを願っています。読んでくれてありがとう。これについてアドバイスをいただければ幸いです。
ニック。