Javascript 使用jquery获取跨距高度
我正在尝试将一系列跨度垂直居中放置在其父LIs中 返回的高度值都是相同的,这意味着此代码一定有问题,因为某些跨距位于两行上 不确定获取内联元素(span)的高度是否有问题,任何建议都值得赞赏 HTML: 将跨度设为元素将使其具有高度:Javascript 使用jquery获取跨距高度,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试将一系列跨度垂直居中放置在其父LIs中 返回的高度值都是相同的,这意味着此代码一定有问题,因为某些跨距位于两行上 不确定获取内联元素(span)的高度是否有问题,任何建议都值得赞赏 HTML: 将跨度设为元素将使其具有高度: <style> span.menu-item { display:block /* or inline-block */; } </style> span.menu-item{display:block/*或inline block*/
<style> span.menu-item { display:block /* or inline-block */; } </style>
span.menu-item{display:block/*或inline block*/;}
作为替代方案,您可以将跨度更改为本机跨度。将跨度设置为元素将使其具有高度:
<style> span.menu-item { display:block /* or inline-block */; } </style>
span.menu-item{display:block/*或inline block*/;}
作为替代方案,您可以将范围更改为本地范围。我不确定目标是什么,但我有一个答案,解释为什么警报总是相同的。您正在使用
.each()
迭代li
元素,但在每次迭代中,您没有引用当前项,因此始终检索第一个匹配元素的高度。试试这个:
通过设置
行高,菜单项的垂直居中可能会更容易些我不确定目标是什么,但我确实有一个答案来解释为什么警报总是相同的。您正在使用.each()
迭代li
元素,但在每次迭代中,您没有引用当前项,因此始终检索第一个匹配元素的高度。试试这个:
通过设置行高度,菜单项的垂直居中可能会更容易,我不确定这是否适用于您的代码,但通过使
元素内联块并垂直居中,您可以避免使用jQuery:
li.nav-level-2-item
{
display: inline-block;
*display: inline; *zoom: 1; /* IE 6-7 hack */
vertical-align: middle;
}
或其他可能的解决方案:
li.nav-level-2-item
{
display: table;
}
li.nav-level-2-item a
{
display: table-cell;
vertical-align: middle;
}
对于其他仅限于CSS的解决方案,请查看并。我不确定这是否适用于您的代码,但您可以通过使
元素内联块并垂直居中来避免使用jQuery:
li.nav-level-2-item
{
display: inline-block;
*display: inline; *zoom: 1; /* IE 6-7 hack */
vertical-align: middle;
}
或其他可能的解决方案:
li.nav-level-2-item
{
display: table;
}
li.nav-level-2-item a
{
display: table-cell;
vertical-align: middle;
}
对于其他仅限于CSS的解决方案,请查看和。Spans没有高度您的目标是什么?你想做什么?改用DIVs,@YuriyGalanter是正确的-span本身是无量纲元素,它会根据周围的内容进行更新。。。或者更好的方法是,利用您已经存在的A标记:)我已将跨距更改为div来尝试和诊断,仍然无法垂直居中,无论它们是跨距还是div。@j08691尝试垂直居中父lisSpans中的跨距没有高度您的目标是什么?你想做什么?改用DIVs,@YuriyGalanter是正确的-span本身是无量纲元素,它会根据周围的内容进行更新。。。或者更好的是,利用您已经存在的A标记:)我已将跨度更改为div,以尝试进行诊断,仍然无法垂直居中,无论它们是跨距还是div。@j08691试图垂直居中父lisI中的跨距,我应该在代码中包含css,但感谢您指出这一点。我应该在代码中包含css,但感谢您指出这一点。您完全正确,通过直接使用jquery解决方案,我已经完成了很多事情。使用纯css是有可能实现的……谢谢你说的绝对正确,我直接使用jquery解决方案,完成了很多事情。这是可能实现与纯css…谢谢