Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 为什么绝对定位元素不遵守定位指南?_Html_Css_Css Position - Fatal编程技术网

Html 为什么绝对定位元素不遵守定位指南?

Html 为什么绝对定位元素不遵守定位指南?,html,css,css-position,Html,Css,Css Position,我正在学习一个关于如何在dreamweaver()中构建网站的教程,但是我试图理解为什么教程中的某个步骤会如此有效 我有一个绝对定位的元素#navlink,它在DOM结构中的位置如下: nav h2 #menulink ul #navlink nav 从视觉上看结果,ul#navlinks会根据绝对标志从页面中删除,但它不会锚定在最后定位的元素旁边,即html页面(因为ul上面的元素不是相对的或其他的),而是跳转到dom中它上面的h2#menulink 我不确定这是否只是我的

我正在学习一个关于如何在dreamweaver()中构建网站的教程,但是我试图理解为什么教程中的某个步骤会如此有效

我有一个绝对定位的元素#navlink,它在DOM结构中的位置如下:

nav 
    h2 #menulink
    ul #navlink
nav
从视觉上看结果,ul#navlinks会根据绝对标志从页面中删除,但它不会锚定在最后定位的元素旁边,即html页面(因为ul上面的元素不是相对的或其他的),而是跳转到dom中它上面的h2#menulink

我不确定这是否只是我的代码中的一个错误,我是否以某种方式错误地定位了h2或nav元素,或者我忽略了文档流附件点被覆盖的其他原因,但无论我浏览代码多少次,我都找不到错误

这是一个链接,指向完整的源代码以及JFIDLE中的呈现页面:


这是预期的行为。您的代码是正确的,浏览器也是正确的。对于
绝对定位
而言,仅当定义了
属性时,才将其水平定位在“最后定位的元素旁边”,并且仅当定义了
顶部
底部
属性时,才将其垂直定位


如果没有为
ul#navlink
定义的
顶部
底部
左侧
右侧
,它将“从页面中删除”,但定位为
位置:静态
,谢谢,非常好的解释。