我有一个带有<ul>
s 的简单菜单。我想更改元素的位置并保持样式不变(我应该更改属于其中发生更改的元素的 css)。这是我的菜单:http: //jsfiddle.net/EPvGf/24/
代码,CSS:
ul#menu { margin:0; padding:0; list-style-type:none;text-align: center; }
ul#menu li { position:relative; float:left; border-bottom:4px solid #efefef; margin-right: 10px; padding-right: 0px; padding-bottom: 5px;display: inline-block;}
ul#menu .current { border-bottom:4px solid #3d496a;}
ul#menu li:hover { border-bottom:4px solid #3d496a;}
ul#menu li a { padding:2px 2px; text-decoration:none; font:bold 8px Verdana, Georgia, "Times New Roman", Times, serif; color:#68759c;}
ul#menu li a:hover { color:#8895b8; border:none; }
HTML:
<ul id="menu">
<li><a href="#" data-id="div1">Description</a></li>
<li><a href="#" data-id="div2">Shipping and payment</a></li>
<li><a href="#" data-id="div3">Returns</a></li>
<li><a href="#" data-id="div4">Feedback</a></li>
</ul>
查询:
$(document).ready(function () {
$('#menu').on('click', 'a', function () {
$('.current').not($(this).closest('li').addClass('current')).removeClass('current');
}).find('a:first').click();
});
我要更改的是 HTML 代码中的一个非常简单的更改,只需将它放在<a>
之前<li>
(它在它之后),所以它会是这样的:
<ul id="menu">
<a href="#" data-id="div1"><li>Description</li></a>
<a href="#" data-id="div2"><li>Shipping and payment</li></a>
<a href="#" data-id="div3"><li>Returns</li></a>
<a href="#" data-id="div4"><li>Feedback</li></a>
</ul>
但保持相同的风格..这是我尝试过的,但它不能 100% 工作:http: //jsfiddle.net/EPvGf/25/