話題のとおり。ホバリングした人に彼のwidth
. しかし、すべてのリスト要素が彼のwidth
.
簡単に思えますが、わかりません。助言がありますか?
編集: width
at #nav li a:hover {
をに変更するbackground-color: #555;
と正常に動作します。今本当に混乱しています。
他の要素には影響せず、移動するだけです。これを参照してください。
解決策:を追加しmargin-left: -30px;
ます。それは他の要素を修正します。
なぜ30px?30pxは、古い幅と新しい幅(90と120px)の差です。
#nav li a:hover {
width: 120px;
margin-left: -30px;
}
ライブデモ:jsFiddle
ここで実際に何が起こっているか見てみましょう: 幅はすべてのリンクではなく、現在のリンクでのみ変更されます: http://jsfiddle.net/JjMfU/15/
別の問題に取り組む必要があります-常に右側にリンクを配置するだけです-これは、リンクを右側にフロートさせることによって行われます. フロートを処理するために追加overflow: hidden
したことに注意してください。他の方法も存在します。li