0

随着“导航”标签的出现,我正在重新审视导航栏的创建。有很多教程,但他们采用不同的方法,并且用太多的 css 解决了这个问题。

具体来说,我有一个 960 宽的内容区域,我想将导航按钮居中。

  1. 'nav' 元素是否有任何固有的 css 行为,或者它纯粹是一个语义容器?
  2. 如果我将按钮居中,那么我肯定不需要“浮动”它们吗?文本对齐,ul 的中心应该可以解决问题。
  3. 如果我希望按钮比导航栏本身短,我应该给栏一个高度(使用按钮的行高使它们居中)还是为按钮添加边距以向外(垂直)推动栏?
4

1 回答 1

1

这里有几个例子:http: //jsfiddle.net/joplomacedo/ejSby/

'nav' 元素是否有任何固有的 css 行为,或者它纯粹是一个语义容器?

nav元素是一个纯粹的语义容器。就 css 而言,它的行为只不过是一个简单的块级元素,如div.

如果我将按钮居中,那么我肯定不需要“浮动”它们吗?文本对齐,ul 的中心应该可以解决问题。

如果您正在使用ul,就像您说的那样,那么您也将需要li'。问题是li' 显示块(实际上,不是块 - list-item。在我们感兴趣的方式中,它们的行为类似于块) - 当你想并排放置块级元素时,你会总是需要float它们,或者将它们的显示更改为inline( inline-block)。

“浮动”或“内联阻塞”。出于多种原因,我倾向于使用“inline-block 技术”——其中之一是,如您所愿,将块居中只是将 text-align 设置为在父元素上居中的问题。

如果我希望按钮比导航栏本身短,我应该给栏一个高度(使用按钮的行高使它们居中)还是为按钮添加边距以向外(垂直)推动栏?

padding-top将&添加到导航块似乎更简单bottom,不是吗?

再说一次,这是小提琴:http: //jsfiddle.net/joplomacedo/ejSby/

于 2012-07-07T03:22:00.693 回答