让float:left的对象居中的解决办法

飘逸的风11年前 (2015-04-06)前端6225
我们在做导航(nav)时,通常会用到float:left;但是这样做的话,让导航文本水平居中确实个麻烦事; 

分析如下: 

[float:left]有个伟大之处,它使div(或者其他标签)的宽度自适应其内容,但它却有个弊端:无法居中。 
[display:inline-block]也有同样的特性,并且可以居中,但连续几个这样的东东,之间却会出现空格。 

为了解决这个问题,我们可以把二者结合起来使用: 

[参与测试的浏览器:IE6 / IE7 / IE8 / FF3 / OP9.6 / SF3 / Chrome2 ] 

[操作系统:Windows] 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="https://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>inline-block解决float:left对象无法居中的问题。</title> 
<style type="text/css"> 
* { margin:0; padding:0; list-style:none;} 
.container { text-align:center;} 
li { float:left; font-size:12px;} 
a { float:left; border:1px solid #000; padding:5px 10px; text-decoration:none; color:#000;} 
ul { display:inline-block; *display:inline; zoom:1;} 
</style> 
</head> 
<body> 
<div class="container">
    <ul> 
        <li><a href="#nogo">首页</a></li> 
        <li><a href="#nogo">关于</a></li> 
        <li><a href="#nogo">产品</a></li> 
        <li><a href="#nogo">联系我们</a></li> 
        <li><a href="#nogo">留言</a></li> 
    </ul> 
</div>
</body> 
</html> 


相关文章

jQuery 滚动鼠标中键图片自动改变大小(统一控制)

今天维护一个项目,需要对内容里的图片通过图片中间控制大小。由于是以前完成的,客户之前也没有提出要求,所以对已经添加后的数据没办法在一个个地在图片上加函数。网上查找了一下控制中键的资料,终于找到解决办法...

JS设为首页加入收藏兼容特效

废话不多说,上代码: // 添加到收藏夹 function AddFavorite(sURL, sTitle) { try { if (typeof(sURL) == "undefi...

让Div浮动层浮在Flash上面下去,div在flash上,层在flash上

直接复制如下代码做swf显示代码 <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="https://...

js控制在网页中禁用右键和禁止另存为的代码

禁止网页右击,选择,最简单的两句代码: <script type="text/javascript"> <!-- document.oncontextmenu=n...

css防止ul下的li换行代码

css防止ul下的li换行代码

完成效果图:  出现问题的效果图: 由于我做的页面品牌那里要展示的品牌名称肯定是有长有短,所以无法给li定义width,所以我只给li加了个float,在火狐和ie8下li更够自...

网页个性字体——迟到的中文 WebFont

网页个性字体——迟到的中文 WebFont

三年前,有一个设计师面试一位 Web 前端工程师,其中有一段这样的对话: “如果设计师希望用图片实现某个字体样式,而从技术的角度来说这样不合理,但设计师非常坚持,这时候你怎么办?” “我会给设计师...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。