jQuery MagicLine Navigation (http://css-tricks.com/jquery-magicline-navigation/) でこの問題を解決するために誰かが私を助けてくれるかどうか疑問に思っていました
ページが読み込まれると、li id="magic-line" は常に「ホーム」リンクよりも 10 px 大きくなるように見えます。ホームリンクにカーソルを合わせると、線のサイズが縮小されます。
ナビゲーションはhttp://www.jonasbabrauskas.com/jncustomsにあります
html では、マウスを上に置くと、幅 77px から幅 58px に移動するようです。マウスがホバーされていないときに正しいサイズにする方法について、誰かが解決策を持っていますか? 他のすべてのリンクは完全に正常に機能しているようです。LavaLamp プラグインも使用してみましたが、同じ問題がありました。ナビゲーションに使用した @font-face が原因かどうかはわかりません。
ここに私のコードがあります。ありがとうございました。
jQuery
$(function() {
var $el, leftPos, newWidth;
$mainNav2 = $("#example-two");
/*
EXAMPLE ONE
*/
/* Add Magic Line markup via JavaScript, because it ain't gonna work without */
$("#example-one").append("<li id='magic-line'></li>");
/* Cache it */
var $magicLine = $("#magic-line");
$magicLine
.width($(".current_page_item").width())
.css("left", $(".current_page_item a").position().left)
.data("origLeft", $magicLine.position().left)
.data("origWidth", $magicLine.width());
$("#example-one li").find("a").hover(function() {
$el = $(this);
leftPos = $el.position().left;
newWidth = $el.parent().width();
$magicLine.stop().animate({
left: leftPos,
width: newWidth
});
}, function() {
$magicLine.stop().animate({
left: $magicLine.data("origLeft"),
width: $magicLine.data("origWidth")
});
});
});
HTML
<ul class="group" id="example-one">
<li class="current_page_item">
<a href="#">Home</a>
</li>
<li><a href="#">Buy Tickets</a></li>
<li><a href="#">Group Sales</a></li>
<li><a href="#">Reviews</a></li>
<li><a href="#">The Show</a></li>
</ul>
CSS
#example-one {
margin: 0 auto;
list-style: none;
position: relative;
width: 500px;
}
#example-one li {
display: inline-block;
}
#example-one a {
float: left;
padding: 6px 10px 4px 10px;
}
#example-one a:hover {
color: #000;
}
#magic-line {
position: absolute;
bottom: -2px;
left: 0;
width: 100px;
height: 2px;
background: #000;
}
.current_page_item a {
color: #000 !important;
}
.ie6 #example-one li, .ie7 #example-one li {
display: inline;
}
.ie6 #magic-line {
bottom: -3px;
}