繁体   English   中英

内联块ul li高度不合适

[英]Inline-block ul li height doesn't fit

我有一个水平导航,它使用内联块作为li标记的以下代码段:

<ul>
  <li><a href="#">HOME</a></li>
  <li><a href="#">FEATURES</a></li>
  <li><a href="#">ABOUT US</a></li>
</ul>
ul {
 list-style-type: none;                                                
 background-color: green;
} 

ul > li {
  display: inline-block;
} 

li a {
  display: block;                   
  border: 2px solid #00283a;
  padding: 2.1em 1.5em 2.5em;
}

结果: http : //jsfiddle.net/a0odv8tj/2/

  • ul标签的高度:95px;
  • li标签的高度:95.5938px;

但是我不知道为什么ul标签的高度不等于li标签的高度。 您能解释这个问题并帮助我解决吗? 非常感谢!

也许只是一个hack,但不断变化

padding: 2.1em 1.5em 2.5em;

至:

padding: 2.0em 1.5em 2.5em;

缝来解决这个问题

问题与文本的线框溢出锚元素有关。 您的问题是相对于设置文本基线的位置,还是相对于折叠到文本大小的块级元素而言。

一种验证方式是设置overflow:auto; li a ,看事情如何扩大覆盖的元素。

我意识到,重新阅读我写的内容并不是一个很好的解释,但是自从我想到细节以来已经有一段时间了。 我可能会稍后再编辑。

或者您可以阅读有关此的规范,这可能是个好主意。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM