内联元素中的绝对定位。 这种行为是否正确?
考虑以下简单的HTML和CSS
a.rel{
position:relative;
}
button{
position:absolute;
top:0;
left:0;
}
Lorem ipsum dolor sit amet
<a class="rel" href="https://www.google.co.uk">
<img src=
"https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png">
<button>I'm a button</button>
</a>
内联框的高度(也就是由带有display: inline
的元素生成的框)由支柱决定,该支柱是一个虚构的框,其高度足以包含计算font-size
文本。 请参阅§10.6.1和§10.8.1以及line-height
propdef(尽管请注意, line-height
决定了行内框出现的行框的高度,而不是行内框的高度)。
值得注意的是,即使该子项高于支柱,内联级别的子项也不会影响其父内联框的高度。 因此该按钮的位置相对于a
元件的支柱。 这也意味着,如果图像不存在,按钮的位置将是相同的:
a.rel{
position:relative;
}
button{
position:absolute;
top:0;
left:0;
}
Lorem ipsum dolor sit amet
<a class="rel" href="https://www.google.co.uk">
<!-- img src=
"https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png" -->
<button>I'm a button</button>
</a>
链接左上角的按钮IS。 然而,你误解了链接的大小。 作为a
默认显示具有内联的,其大小不通过的大小增加img
,而不是它的只是行高度(由字体尺寸确定)。
如果增加链接元素的字体大小,该按钮将因此上升。
您可以使用开发工具轻松查看链接元素的确切尺寸。
链接地址: http://www.djcxy.com/p/92801.html上一篇: Absolute positioning within inline elements. Is this behaviour correct?
下一篇: Defragment H264 NAL stream (Originally 1722 avb packets)