Html 垂直菜单中文本下的像素空间ul/li/a
我有一个简单的html ul/li/a垂直菜单,如下所示: 请,我的问题是:为什么链接的文本(“文本”)在底部有一个空格?要使文本在锚定空间中垂直居中,我必须做什么? 我试过各种方法,但都不起作用。在发布的示例中,我添加了一个填充:0px 7px;对于锚定标记,但它不垂直工作Html 垂直菜单中文本下的像素空间ul/li/a,html,css,Html,Css,我有一个简单的html ul/li/a垂直菜单,如下所示: 请,我的问题是:为什么链接的文本(“文本”)在底部有一个空格?要使文本在锚定空间中垂直居中,我必须做什么? 我试过各种方法,但都不起作用。在发布的示例中,我添加了一个填充:0px 7px;对于锚定标记,但它不垂直工作 发布的代码与Firefox存在问题,它与Safari配合良好。在CSSa{中,锚定标记周围有一个边框和一个填充。如果将此值设置为0(零),则“额外空间”将消失 a { line-height:100%; d
发布的代码与Firefox存在问题,它与Safari配合良好。在CSS
a{
中,锚定标记周围有一个边框和一个填充。如果将此值设置为0
(零),则“额外空间”将消失
a {
line-height:100%;
display:table-cell;
text-decoration: none;
background-color:red;
border: 0px solid; /*changed to zero, removes border*/
font-size: 35px;
padding: 0px 0px; /*changed to zero, removes horiz space before&after text*/
color:white;
vertical-align: middle;
}
你应该知道Gecko和WebKit对线条高度的工作原理有不同的解释。这把小提琴说明了问题:。根据,Firefox似乎做了正确的事情;无论如何,这是有区别的
如果出于任何原因,您认为应该使用这种方法,您可以尝试更高的
行高
,比如行高:40px
,专门针对firefox,可能使用JS代码。一个解决方案,比如说一个简单的解决方案,就是只使用一些字体,而不是其他字体
换句话说,我注意到,若在标签的css中我指定了一种类似Arial的字体,那个么垂直对齐在Firefox和Safari中是完美的。若我使用一些其他字体,比如serif、Helvetica,那个么问题仍然存在。你们的意思是什么
(“文本”)底部有一个空格
?你的意思是红色框之间的间隙?在JSFIDLE中,你有边框:1px实心;
在锚定标记上,这会在红色块之间留出空白,请参阅更新版本:。并且填充不垂直工作,因为你将0px分配给了真实值,请尝试使用不同的n像padding:10px 7px;
WTF这样的数字你使用的是display:table/table row/table cell
吗?不要这样做。坚持使用block和inline以及inline block。另外,记住行高
,只需简单地在css定义的末尾添加一个padding top:3px
。不过,这会破坏你在Chrome和Safari中看到的内容。Kaymar:这不是问题的解决方案,而是将该问题从Firefox转换为Safari。
#pageNavigation {
background-image: url('../Images/TIBC_Base/nav-bg.png');
background-repeat: repeat-y;
margin:5px 0;
padding:5px 15px 5px;
min-height:125px;
}
#pageNavigation .navContent {
display: table;
width:240px;
list-style-type: none;
margin:0; padding:0;
}
#pageNavigation .navContent li {
display: table-row;
height:57px;
text-align:center;
}
#pageNavigation a {
display: table-cell;
vertical-align: middle;
height:57px;
border-top:0px #E1E1E1 solid;
border-bottom:1px #E1E1E1 solid;
font-size:16px;
text-decoration:none;
color:#485963;
text-shadow: 0px -1px #EEEEEE;
}
a {
line-height:100%;
display:table-cell;
text-decoration: none;
background-color:red;
border: 0px solid; /*changed to zero, removes border*/
font-size: 35px;
padding: 0px 0px; /*changed to zero, removes horiz space before&after text*/
color:white;
vertical-align: middle;
}