Height 如果body或h2具有线条高度,则链接高度大于父级h2
我试图理解为什么会发生这种情况 如果我有一个Height 如果body或h2具有线条高度,则链接高度大于父级h2,height,css,Height,Css,我试图理解为什么会发生这种情况 如果我有一个来尝试理解这一点 从我对规范的阅读来看,一个块级元素h2中的内联元素a应该继承父行高度。我在h2上编辑了一个较大的行高的示例。给a一个内联块的显示显然使它更合适,但它仍然不能行通过并完全删除行高(因此使用浏览器默认的行高1.2) 这可能不是问题本身,我只是想了解行为 [更新3]我意识到,如果我将a的行高更改为大于h2,则h2框的总高度(上面的示例中为粉红色)确实会增加,因此a从h2继承行高。令人困惑的是链接高度(可点击区域)和边框底部位置不会改变,而h
来尝试理解这一点
从我对规范的阅读来看,一个块级元素h2
中的内联元素a
应该继承父行高度。我在h2
上编辑了一个较大的行高的示例。给a
一个内联块的显示显然使它更合适,但它仍然不能行通过并完全删除行高(因此使用浏览器默认的行高1.2)
这可能不是问题本身,我只是想了解行为
[更新3]我意识到,如果我将a
的行高更改为大于h2
,则h2
框的总高度(上面的示例中为粉红色)确实会增加,因此a
从h2
继承行高。令人困惑的是链接高度(可点击区域)和边框底部位置不会改变,而h2
上的边框底部会随着行高移动。我看不出您的问题。在你提供的链接中,绝对没有什么奇怪的。在h2中有一个链接。所以链接的字体大小得到h2的字体大小。但是a比h2大不了多少。这不是问题吗
但是添加显示:块编码>到你的锚,它的行为将更像你期望的那样你有一个包含链接的h2
h2和链接的行高为1(继承),但链接的显式字体大小为3em
这意味着,字体大小与容器一样大,这可能会导致在不同的浏览器中产生不同的结果
在Firefox(版本13)中,结果是父容器(h2)的顶部和底部出现溢出。您是否尝试删除
的边距?在大多数浏览器中,它的默认边距为0.5em
如果这是你能读到的问题
编辑:
你有两种容器,一种是高度固定的牙线块;
一个内联女巫有自动仇恨。。默认边距和间距(将链接想象为段落的一部分…)
要获得预期结果,您可以在上添加display:inline block
。。。我不能理解这个问题..不知道你所说的“链接高度”是什么意思你是指font size:3rem
有效为字体大小:3em
或其他一些度量值如rem
无效。如果我在
上设置了一个通用线高度,那么这也应该适用于
?基本上,我没有得到我期望的行为,我试图理解为什么。rem
不是无效的,它是一个CSS3单元。它的意思是“root em”,指的是
字体大小。在生产代码中,您在px中显然会有一个后备font size
。
的font size
为3rem,而行高
为1(继承)。
作为
的子项,是否应同时继承行高和字体大小?我还尝试在
上显式设置行高
,并将其字体大小
更改为3rem,这两种方法都没有任何效果。另外,删除行高
会使它们按预期排列得很好。是的,但问题是,“行高:1;”等于浏览器的1*字体大小,“字体大小:3em;”等于浏览器的3*字体大小,这意味着字体大小比行高大3倍。据我所知,线高度继承不是这样工作的。声明行高:1代码>是继承的,而不是行高的结果:1代码>应用于正文字体大小。因此,在h2上,线高度等于1×3.3em,等于48px。如果我将body line height声明更改为1.5,则h2
行高将更改为72px。我之前尝试过此操作,以查看其效果。它显然得到了一个更接近预期的结果;但它仍然有几个像素的距离代码>到
在代码中,边框
和边框
从不重叠。“高度”=“边框宽度x2”+“高度”请参阅我上面的更新,以了解我认为的问题所在。