Drop down menu 为什么CSS下拉菜单使内容跳下?是什么解决了这个问题?

Drop down menu 为什么CSS下拉菜单使内容跳下?是什么解决了这个问题?,drop-down-menu,css,Drop Down Menu,Css,我正在开发一个纯CSS下拉菜单。(IE6目前对我来说并不重要。) 我把所有的东西都放在一个“包装器”的div里,用来定心 页面的“#wrapper”内有4个div,第一个是“#topbar”,第二个是“#nav”,第三个是“内容”框,第四个是“页脚” “#content”和“#footer”div具有绝对定位,可防止它们在子菜单出现时跳下。这适用于IE8、Chrome和FF,但IE8;s兼容模式显示IE7将把“#content”和“#footer”分区显示在中间列的左侧。此外,绝对定位用于将页脚

我正在开发一个纯CSS下拉菜单。(IE6目前对我来说并不重要。)

我把所有的东西都放在一个“包装器”的div里,用来定心

页面的“#wrapper”内有4个div,第一个是“#topbar”,第二个是“#nav”,第三个是“内容”框,第四个是“页脚”

“#content”和“#footer”div具有绝对定位,可防止它们在子菜单出现时跳下。这适用于IE8、Chrome和FF,但IE8;s兼容模式显示IE7将把“#content”和“#footer”分区显示在中间列的左侧。此外,绝对定位用于将页脚保持在页面底部。删除它修复了ie7的错误,但当子菜单暴露时,它会导致所有内容向下移动

有没有办法修复IE7在没有绝对定位的情况下渲染底部div的左边距?还是用它

我更喜欢纯CSS

编辑:


信不信由你,我使用的是一堆跨度元素,不是ul或div。我应该使用ul/li结构吗?我发现这是额外的代码

您是否想过将div置于相对位置,并将子菜单置于相对容器的位置

ul.menu li             { position:relative; overflow:auto; }    
ul.menu li ul.sub_menu { position:absolute; z-index:10; top:somePixelValueThatClearsTopListItem; }

您是否想过将div置于相对位置,并将子菜单置于相对容器的位置

ul.menu li             { position:relative; overflow:auto; }    
ul.menu li ul.sub_menu { position:absolute; z-index:10; top:somePixelValueThatClearsTopListItem; }

如果IE6不重要,您是否也考虑过忽略IE7

无论如何,因为你没有发布你的代码,一个快速修复方法就是使用它并将其放置在CSS定义/链接的其余部分下面

<!--[if IE 7]>
<style type="text/css">
  .className {position: static;/*or relative*/}
</style>
<![endif]-->

如果IE6不重要,您是否也考虑过忽略IE7

无论如何,因为你没有发布你的代码,一个快速修复方法就是使用它并将其放置在CSS定义/链接的其余部分下面

<!--[if IE 7]>
<style type="text/css">
  .className {position: static;/*or relative*/}
</style>
<![endif]-->


ie7仍然太普遍。我一直是一名“标准设计师”,ie6远不如ie7令人印象深刻。ie7仍然太普遍。我一直是一名“标准设计师”,ie6远不如ie7给人留下深刻印象。李,你真的应该给ul一个想法。它在语义上比使用span更“正确”(虽然主观)。@o.k.w.-你是对的,事实是,它可能也消耗更少的带宽。我看看能不能试一试。你真的应该给ul,李一个想法。它在语义上比使用span更“正确”(虽然主观)。@o.k.w.-你是对的,事实是,它可能也消耗更少的带宽。我看看能不能试一试。