图文详解如何让ul中的li元素横向排列(附代码)

yulia
yulia原创
2018-09-25 11:04:0840409浏览

在页面布局时,我们经常会用到li标签,因为li标签用途很广泛,它可以用来制作列表,选项卡,导航等等。但是<ul>标签里的li默认情况下是纵向排列的,那我们可不可以让li横向排列呢?这篇文章就给大家介绍两种方法,来实现HTML中ul列表横向排列。有需要的朋友可以参考一下,希望对你有用。

ul列表的横向排列在导航中用得比较多,接下来就通过横向导航实例来讲讲如何用CSS让ul横向排列。

注意:

1、li列表前面默认有小圆点,有时候为了美观需要去掉多余的小圆点,可以使用CSS中的list-style:none这个属性,当然也可以在列表前面加一些图片。

2、为了让页面更具有吸引力,导航一般都会用到伪类元素,最常见的就是hover,它可以实现鼠标经过导航时,改变导航的背景颜色,字体大小,图片等等。

3、巧妙使用CSS中的display属性。如果需要让li具有高度和宽度,并且需要调节菜单内容的位置,必须将display属性值设置为block,将其变成块级元素后,padding,text-align等属性才起作用。

一、display:inline 实现ul横向排列

用ul li做一个横向导航,实现鼠标经过时,背景颜色改变。代码如下:

HTML部分:

<ul id="nav">
		<li><a href="#">首页</a></li>
		<li><a href="#">课程介绍</a></li>
		<li><a href="#">师资力量</a></li>
		<li><a href="#">新闻动态</a></li>
		<li><a href="#">联系我们</a></li>	
	</ul>

CSS部分:

<style type="text/css">			
	#nav {
	        margin: 50px auto;
	        height: 40px;
	         background-color: #690;
	      }			
	#nav ul {
		list-style: none;
		margin-left: 50px;
		}			
	#nav li {
		display: inline;			    
		}			
	#nav a {
		line-height: 40px;
		color: #fff;
		text-decoration: none;
		padding: 20px 20px;
		}			
	#nav a:hover {
		background-color: #060;
		}
</style>

效果图:

导航1.jpg

鼠标经过的效果:

导航2.jpg

二、float:left 实现ul横向排列

用float:left 实现ul横向排列,li浮动以后会脱离标准流,且不占位置,如果它的父级元素有具体的样式且没有固定宽高,还需要对父元素清除浮动,或者设置固定宽高。HTML部分和上面一样,CSS部分如下所示:

<style type="text/css">
	#nav {
		height: 40px;
		margin-top: 50px;
		background-color: #690;
		}			
	#nav ul {
		list-style: none;			    
		margin-left: 50px;
		}			
	#nav li {
		display: block;
		float: left;
		}			
	#nav a {
		line-height: 40px;
		display: block;
		color: #fff;
		text-decoration: none;
		padding: 0 20px;
		}			
	#nav a:hover {
		background-color: #060;
		}
</style>

效果和上面一样,只是方法不一样。

总结:float:left和display:inline都可以实现ul li横向排列,具体选择什么方法,看个人习惯和项目需要吧,初学者可以自己动手尝试,希望可以帮助到你。

以上就是图文详解如何让ul中的li元素横向排列(附代码)的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。