当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > 在解决ul居中问题时想到的几点

CSS样式表
用css实现图片垂直居中的使用技巧
CSS List Grid Layout 图片垂直居中
IE6网页神奇BUG
Marquee高级用法实例代码
web标准知识——从p开始,循序渐进
web标准知识——用途相似的标签
html链接与文本标签们
当标题不能显示完整的解决方法
详解链接的rel与target区别
使css兼容IE8的小技巧
CSS 首字母大写代码
CSSvista可同时在IE和Fifrefox调试的CSS编辑提供下载
css font缩写总结附实例
css下margin、padding、border、background和font缩写示例
用CSS来控制图片显示大小的代码
css下划线颜色一句话代码
css常见问题解决方法小结
relative absolute无法冲破的等级问题解决
div总是被select遮挡的解决方法
CSS文字截取功能实现代码

CSS样式表 中的 在解决ul居中问题时想到的几点


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 149 ::
收藏到网摘: n/a

最近在做网站的时候碰到了一个问题:我用 ul 标签和 li 标签构建的导航栏想要在不确定 li 数量和 li, ul 宽度的情况下居中,但是给 ul 使用了 text-align:center 之后却没有起到应有的效果。
原来的页面结构是:
复制代码 代码如下:

<div id="menu">
<ul class="menu_ul">
<li class="menu_li"><a href="#">Firede</a></li>
<li class="menu_li"><a href="#">Style5</a></li>
</ul>
</div>

样式表结构是:
复制代码 代码如下:

<style>
#menu{...}
.menu_ul{...}
.menu_li{...}
</style>

这样本来也是没有什么问题的,但是因为要实现一个功能却定义了一个ID(menu)和两个CLASS(menu_ul, menu_li),这样CSS文件就臃肿了。
我之所以搞不定 ul 居中的问题,就是因为 CSS 写的太乱太多,到最后一环套一环,自己都糊涂了,定义结构的代码混杂在各种为了显示效果而写的代码之中,于是便写乱了。
在大脑发晕的情况下,不想修改了,于是重新写了实现以上功能的代码,页面结构:
复制代码 代码如下:

<div id="menu">
<ul>
<li><a href="#">Firede</a></li>
<li><a href="#">Style5</a></li>
</ul>
</div>

完整的样式表:
复制代码 代码如下:

<style>
#menu {text-align:center;}
#menu ul {padding:0;margin:0;}
#menu li {display:inline;padding:0 10px;}
</style>

像这样,很简单的就解决了 ul 不能居中的问题。回头检查我的代码,原来是因为在 li 的样式里多加了一句 float:left,因为定义的 display 并不是 block,而是 inline,所以并不能浮动,造成了冲突,最终导致 ul 无法居中显示。
总结一下,在写网页结构的时候,最好同一个功能模块使用相对统一的CSS名。如果可以定义一个样式名解决问题的,尽量不要定义多个,代码也要尽量简洁。因为代码臃肿了就很容易出问题,并且很难发现错误在什么地方。多用些像 menu, menu ul, menu li, menu a, menu a:hover 这种一系列的样式,而不是定义一些像 menu, menu_ul, menu_ul_li 这样看似调理清晰、层次鲜明,但是实际上很混乱的名称。
习惯是以往经验在潜意识中总结出的精华,但是随着技术的进步,很多以往的习惯都成为进一步提高的阻碍,这时候就要多参考一下标准了,看看以往的习惯是不是值得坚持下去。做网站也一样,标准是能够提高效率、改善性能并且指明方向的,Web标准化的设计更有助于我们提高维护网站的效率。