如何设置:链接高度/宽度与CSS?
这听起来有点疯狂,但我不能设置我的导航元素的高度和宽度。
#header div#snav div a{ width:150px; height:77px; } #header div#snav div a:link{ width:150px; height:77px; } #header div#snav div a:hover{ height:77px; background:#eff1de; }
任何想法我做错了什么?
添加显示:块;
a-tag是一个内联元素,所以你的高度和宽度被忽略。
#header div#snav div a{ display:block; width:150px; height:77px; }
锚将需要是一个不同的显示types比他们的默认高度。 display:inline-block;
或display:block;
。
另外检查line-height
,这可能是有趣的。
你的问题可能是a
元素display: inline
本质。 您不能设置内联元素的宽度和高度。
你将不得不在a
上设置display: block
,但是这会带来其他的问题,因为这些链接的行为就像块元素一样。 最常见的治疗方法是让他们float: left
所以他们排队反正。
从高度的定义 :
适用于:所有元素,但未replace的内联元素,表列和列组
默认情况下, a
元素是一个内联元素(并且不被replace)。
您需要更改显示(直接使用显示属性或间接显示,例如使用浮点数)。
感谢RandomUs 1r的观察:
将其更改为显示:inline-block; 解决了这个问题。 RandomUs1r 13年5月14日在21:59
我自己尝试了一个顶部导航菜单栏,如下所示:
第一种风格的“李”元素如下:
显示:内联块;
宽度:7em;
text-align:center;
然后按如下方式设置“a”>元素:
宽度:100%;
现在导航链接都是相等的宽度,每个链接都以文本为中心。