因為li是區塊級元素,預設佔一行的,要實現橫向排列,一般透過以下兩個方法:
float:left
這樣設定有一個問題, li浮動以後則脫離了文字流,即不佔位置,如果它的父級元素有具體的樣式且沒有固定寬高,建議父元素清除浮動,或者設定固定寬高。
display:inline-block
即把li變成行內元素且可以設定寬高以及邊距,這樣也有一個問題,低版本的Ie瀏覽器不相容inline-block,建議在其後再加兩個屬性相容低版本ie
(推薦教學:CSS入門教學)
*display:inline; *zoom:1;
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title>CSS + ul li 横向排列的两种方法 </title> </head> <body> <div id="nav"> <ul> <li><a href="http://blog.csdn.net/superbirds" title="">superbirds</a></li> <li><a href="http://blog.csdn.net/superbirds" title="">superbirds</a></li> <li><a href="http://blog.csdn.net/superbirds" title="">superbirds</a></li> <li><a href="http://blog.csdn.net/superbirds" title="">superbirds</a></li> </ul> </div> </body> </html>
css程式碼一:
* { margin: 0; border: 0; padding: 0; font-size: 13pt; } #nav { height: 40px; border-top: #060 2px solid; border-bottom: #060 2px solid; background-color: #690; } #nav ul { list-style: none; margin-left: 50px; } #nav li { display: inline; line-height: 40px; float:left } #nav a { color: #fff; text-decoration: none; padding: 20px 20px; } #nav a:hover { background-color: #060; }
css程式碼二:
* { margin: 0; border: 0; padding: 0; font-size: 13pt; } #nav { height: 40px; border-top: #060 2px solid; margin-top: 100px; border-bottom: #060 2px solid; background-color: #690; } #nav ul { list-style: none; line-height: 40px; margin-left: 50px; } #nav li { display: block; float: left; } #nav a { display: block; color: #fff; text-decoration: none; padding: 0 20px; } #nav a:hover { background-color: #060; }
相關影片教學推薦:css影片教學
以上是css如何實現ul和li橫向排列的詳細內容。更多資訊請關注PHP中文網其他相關文章!