我正在关注如何在Dreamweaver中构建网站的教程(https://helpx.adobe.com/dreamweaver/how-to/make-website-pt6-web-links-navigation.html)但是我试图理解为什么教程中的某个步骤可以正常工作。
我有一个绝对定位的元素#navlink,这是它在DOM结构中的位置:
nav
h2 #menulink
ul #navlink
nav
直观地查看结果,根据绝对标志从页面中删除ul#navlinks,而不是在最后定位的元素(即html页面)旁边锚定(因为ul上面的元素没有相对或其他位置)它跳到了dom上面的h2#menulink。
我不确定这是否只是我的代码中的一个错误,并且我不知不觉地以某种方式定位h2或nav元素,或者我忽略了为什么文档流附加点被覆盖的其他原因,但是无论我多少次通过代码,我都找不到错误。
这是一个完整的源代码链接,以及我在jfiddle中提供的渲染页面:
https://gist.github.com/anonymous/5d8bde1f196b919dab297560ff85b072
答案 0 :(得分:1)
这是预期的行为。您的代码是正确的,浏览器也是如此。对于absolute
定位,它在最后定位的元素旁边锚定""仅在定义left
或right
属性时水平放置,并且仅在定义top
或bottom
属性时垂直放置。
如果top
没有定义bottom
,left
,right
或ul#navlink
,则会从页面&#34中删除#34} ;,但定位为position: static
。