<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 这样看似调理清晰、层次鲜明,但是实际上很混乱的名称。