View Full Version : ساخت منوی css با ul li
hamedeb2012
پنج شنبه 15 تیر 1391, 18:46 عصر
من با تگ های ul و li یک منو ساختم و می خوام استایلش به صورتی باشه یه در عکس پیوست نشون دادم
کسی میتونه راهنمایی کنه چطوری میتونم درستش کنم؟
cyrusthegreat
جمعه 16 تیر 1391, 10:14 صبح
دوست عزیز
برای اینکار شما دوتا راه حل دارید. یکی CSS تمام و دیگری JS.
1.CSS
برای اینکار، شما بیایید به ulاتون مثلا مقدار 400px طول بدید. سپس باید برای liهاتون دو مقدار float:left و طول 200px بدید. در اینصورت منو های شما به همین شکلی که بخوایید در میاد. به اینگونه:
ul {
width: 400px
}
li {
float: left;
width: 200px;
}
تنها مشکل این روش این هست که اگر ترتیب منو هاتون اینجوری باشه:
1
2
3
4
به شکل زیر در میاد:
2 1
4 3
2.JS
خوبی این روش این هست که مشکل کد بالا رو نداره و به ترتیب قرار میده.
من کد Jquery اون رو قبلا نوشتم:
var size = $("ul li").size();
if ( size % 2 == 0 ) {
var firstItemNum = size / 2;
var secendItemNum = firstItemNum - 1;
}
else {
var firstItemNum = (size -1) / 2 + 1;
var secendItemNum = firstItemNum - 1;
}
var firstItems = $("ul li:lt("+firstItemNum+")");
var secendItems = $("ul li:gt("+secendItemNum+")");
$("div").html('<div class="first-items"><ul></ul></div><div class="second-items"><ul></ul></div>');
$(firstItems).each(function() {
$("div div.first-items ul").append("<li>"+$(this).html()+"</li>");
});
$(secendItems).each(function() {
$("div div.second-items ul").append("<li>"+$(this).html()+"</li>");
});
این کد منو رو به دو بخش مساوی تقسیم می کنه.
این کد برای html زیر قابل انجام است:
<div>
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
</div>
و CSS مربوط اینگونه است:
div div.first-items {
float: right;
width: 335px;
}
div div.second-items {
float: left;
width: 335px;
margin-right: 10px;
}
امیدوارم مفید بوده باشه.
hamedeb2012
جمعه 16 تیر 1391, 15:17 عصر
ممنون من از همون روش اول استفاده کردم جای قرارگرفتنش زیاد برام فرقی نداشت
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.