ul橫向排版

2021-07-24 07:42:37 字數 1647 閱讀 6977

第一步:建立乙個無序列表

我們先建立乙個無序列表,來建立選單的結構。**是:

第二步:隱藏li的預設樣式

因為看起來不是很好看,選單通常都不需要li預設的圓點,我們給ul定義乙個樣式來消除這些圓點。

當然,為了更好的控制整個選單,我們把選單放在乙個div裡。頁面**變成:

css定義為:

.test ul

說明:「.test ul」表示我要定義的樣式將作用在test的層裡的ul標籤上。

現在的效果是沒有圓點了:

第三步:關鍵的浮動

這裡是選單變成橫向的關鍵,我們給li元素加上乙個「float:left;」屬性,讓每個li浮動在前面乙個li的左面。

css定義為:

.test li

選單變橫向了。就這麼簡單!下面需要做的就是優化細節了。

第四步:調整寬度

選單都擠在一起不好看怎麼辦?我們來調節li的寬度。

在css中新增定義width:100px指定乙個li的寬度是100px,當然你可以根據你的需要調整數值:

.test li

效果是:

如果我們同時定義外面div的寬度,li就會根據div的寬度自動換行,例如定義了div寬350px,6個li的總寬度是600px,一行排不下就自動變成兩行:

.test

第五步:設定基本鏈結效果

接下來,我們通過css來設定鏈結的樣式,分別定義:link、:visited、:hover的狀態

.test a:link

.test a:visited

.test a:hover

第六步:將鏈結以塊級元素顯示

有朋友問,選單鏈結的背景色為什麼沒有填滿整個li的寬度?恩,解決的方法很簡單,在a的樣式定義中增加display:block,使鏈結以塊級元素顯示。

同時我們微調了如下細節:

用text-align:center將選單文字居中;

用height:30px增加背景的高度;

用margin-left:3px使每個選單之間空3px距離;

用line-height:30px;定義行高,使鏈結文字縱向居中;

css定義象這樣:

.test a

.test li

這樣就漂亮多了吧。

第七步:定義背景

我們通常都會在每個鏈結前加乙個小圖示,這樣導航更清楚。css是採用定義li的背景來實現的:

.test a:link

.test a:hover

說明:「background:url(arrow_off.gif) #ccc no-repeat 5px 12px;」這句**是乙個css縮寫,表示背景是arrow_off.gif;背景顏色是#ccc;背景不重複"no-repeat",背景的位置是左邊距5px、上邊距12px;

預設狀態下,圖示為arrow.off.gif,當滑鼠移動到鏈結上,圖示變為arrow_on.gif

效果變成:

現在css的完整**是:

.test ul

.test li

.test a

.test a:link

.test a:visited

.test a:hover

頁面的完整**是:

好了,主要步驟就是這7步,立刻拷貝和修改**試試,你也可以用css做橫向選單了!

ul橫向排列,ul下拉框

最近又開始做網頁,以前做網頁總是自己乙個人想啊想啊,各種效果都是自己乙個人用各種不科學的方法來實現的。以前做的下拉框是做jquery的效果外加自己的js控制。不過嘛,這次我做網頁是參考別人 的源 的,所謂學習就是這麼一回事,雖然看起來很費勁。現在我在做的主要是頂部的那個超連結選單,很多 都有,主要是...

css如何實現ul和li橫向排列

因為li是塊級元素,預設佔一行的,要想實現橫向排列,一般通過以下兩個方法 float left這樣設定有乙個問題,li浮動以後則脫離了文字流,即不佔位置,如果它的父級元素有具體的樣式且沒有固定寬高,建議父元素清除浮動,或者設定固定寬高。display inline block即把li變為行內元素且可...

CSS的ul和li實現橫向排列和去掉li的點

今天做網頁是老是不懂怎麼實現ul的橫向排列和去掉li那個煩人的點,現在找到方法了,做個筆記 複製 如下 ul ul li 順便拓展一下li的list style 複製 如下 ul 程式設計客棧 ul ol ol 再寫個今天看到的東西,是關於dl,dt,dd的,其實就是類似於子類的,我比較少見到各個網...