無序列表li橫向排列


一、橫向兩列方式排列:

在網頁中,很多地方都會用到無序列表橫向排列的形式,通常的寫法都是使得li的css樣式設置為:float:left的形式即可,li會依次從最左邊開始並列對齊,

例如:

HTML中:

1 <ul class="ui">
2     <li><a href="#" >首頁</a></li>
3     <li><a href="#">登錄</a></li>
4     <li><a href="#">注冊</a></li>
5     <li><a href="#">服務大廳</a></li>
6     <li><a href="#">需求大廳</a></li>
7 </ul>

CSS:

 1    .ui{
 2                  width:700px;
 3                  height:50px;
 4                  list-style: none;
 5                  margin:0;
 6                  padding:0;
 7              }
 8         .ui li{
 9             width:70px;
margin:0 10px; 10 float: left;/*該處換為display:inline-block;同樣效果*/
11
12 } 13 14 .ui li a{ 15 width:70px; 16 height:50px; 17 padding:0 20px; 18 font-size: 12px; 19 line-height:50px; 20 background: red; 21 display: inline-block; 22 }

顯示結果:

但是在有些情況下需要列表以兩列的形式分開並列一行,

此時,可以有以下兩種方式來布局:

方法一:

當設置li的屬性為:display:inline-block時:

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4     <title></title>
 5     <style type="text/css">
 6         .ui{
 7                  width:700px;
 8                  height:50px;
 9                  list-style: none;
10                  margin:0;
11                  padding:0;
12              }
13         .ui li{
14             width:70px;
15            display: inline-block;
16            margin:0 10px;
17         }
18 
19         .ui li a{
20             width:70px;
21             height:50px;
22             padding:0 20px;
23             font-size: 12px;
24             line-height:50px;
25             background: red;
26             display: inline-block;
27         }
28         .right{
29             float: right;
30             width:70px;
31         }
32 
33     </style>
34 </head>
35 <body>
36 <ul class="ui">
37     <li><a href="#" >首頁</a></li>
38     <li><a href="#">登錄</a></li>
39     <li><a href="#">注冊</a></li>
40     <li class="right"><a href="#">服務大廳</a></li>
41     <li class="right"><a href="#">需求大廳</a></li>
42 </ul>
43 </body>
44 </html>

方法二:

利用id增加權重使想要浮動在右邊的li有float:right屬性;

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4     <title></title>
 5     <style type="text/css">
 6         .ui{
 7                  width:700px;
 8                  height:50px;
 9                  list-style: none;
10                  margin:0;
11                  padding:0;
12              }
13         .ui li{
14             width:70px;
15            display: inline-block;
16            margin:0 10px;
17         }
18 
19         .ui li a{
20             width:70px;
21             height:50px;
22             padding:0 20px;
23             font-size: 12px;
24             line-height:50px;
25             background: red;
26             display: inline-block;
27         }
28         #rr,#re{
29             float: right;
30         }
31 
32     </style>
33 </head>
34 <body>
35 <ul class="ui">
36     <li><a href="#" >首頁</a></li>
37     <li><a href="#">登錄</a></li>
38     <li><a href="#">注冊</a></li>
39     <li id="rr"><a href="#">服務大廳</a></li>
40     <li id="re"><a href="#">需求大廳</a></li>
41 </ul>
42 </body>
43 </html>

最后,需要注意的是,在浮動的時候,最后的結果與正常部分兩列的情況下的順序有所不同,例如

上面的結果正常是:“首頁”到“需求大廳”依次排列,但是在浮動之后卻變成了“服務大廳”是最后一

個,是因為在“服務大廳”右浮動時,它已經將區域最右側占據,當下一個元素“需求大廳”再右浮動時,

由於最右側已經被簽一個占據,所以它只有在簽一個元素的左側,因此,順序會是倒序的。就是說如

果用left對ABCDE排列,那么用right之后結果就會變成:EDCBA。

 

 

 二、在固定寬度下有間隔的排列

       在外圍區域寬度固定的情況下,要想使ul中的li內容有一定間隔的橫向排列,只要不設置在x方向上

的overflow:hidden;而整個ul為:margin-right:-12px(12隨內容而定),如下:

HTML中:

 1 <div class="grid">
 2     <div class="ui-relative">
 3     <ul class="ui-ul">
 4         <li>
 5             <div class="pic"><a href="#"><img src="  http://p6.zbjimg.com//user_avat_new/007/16/31/200x200_avatar_10.jpg"></a></div>
 6             <h3>
 7                 <a href="#" class="tit">豬八戒</a>
 8             </h3>
 9             <div class="txt">TA 出售的服務(好評率99.51%)</div>
10         </li>
11         <li>
12             <div class="pic"><a href="#"><img src="  http://p6.zbjimg.com//user_avat_new/007/16/31/200x200_avatar_10.jpg"></a></div>
13             <h3>
14                 <a href="#" class="tit">豬八戒</a>
15             </h3>
16             <div class="txt">TA 出售的服務(好評率99.51%)</div>
17         </li>
18         <li>
19             <div class="pic"><a href="#"><img src="  http://p6.zbjimg.com//user_avat_new/007/16/31/200x200_avatar_10.jpg"></a></div>
20             <h3>
21                 <a href="#" class="tit">豬八戒</a>
22             </h3>
23             <div class="txt">TA 出售的服務(好評率99.51%)</div>
24         </li>
25     </ul>
26     </div>
27 </div>

CSS:

 1   .grid{
 2           width:1100px;
 3           margin:0 auto;
 4            }
 5         .ui-ul{
 6             height:auto;
 7             overflow-y: hidden;;
 8            list-style: none;
 9            margin-right:-15px;
10             margin-left:0;
11             padding:0;
12         }
13         .ui-ul li{
14             width:320px;
15             height:120px;
16             padding:15px;
17             float: left;
18             border:1px solid #ccc;
19             margin-right:15px;
20         }
21         .pic{
22             width:120px;
23             height:120px;
24             margin-right:10px;
25             float: left;
26         }
27 .pic img{
28     width:120px;
29     height:120px;
30 }
31 .txt{
32     font-size: 12px;
33 }
34 
35 .ui-relative{
36     position: relative;
37 }

結果為:

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM