Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.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 您将如何修复这个常见IE Z-index错误的罕见示例?_Html_Css_Internet Explorer_Css Float_Z Index - Fatal编程技术网

Html 您将如何修复这个常见IE Z-index错误的罕见示例?

Html 您将如何修复这个常见IE Z-index错误的罕见示例?,html,css,internet-explorer,css-float,z-index,Html,Css,Internet Explorer,Css Float,Z Index,这似乎是一个已经得到回答的常见问题,因为它指的是IE7及更低版本中的。但是,这种情况有点特殊, 我使用的CSS下拉菜单使用嵌套列表作为子菜单。我在其他网站上使用过很多次,但通常第一层是水平的。在这种情况下,第一层需要垂直,子菜单应该飞出而不是下拉 最重要的是,整个事情是复杂的,因为第一级“包装”到设计中的曲线,菜单ul浮动以适应内部页面上的不同布局。浮动会导致各种问题的明显解决方案,因为如果z索引高于页面上的内容,则该内容中的链接将被顶级菜单项覆盖 不管怎样,我耐心地让它工作得很好,除了IE7和

这似乎是一个已经得到回答的常见问题,因为它指的是IE7及更低版本中的。但是,这种情况有点特殊,

我使用的CSS下拉菜单使用嵌套列表作为子菜单。我在其他网站上使用过很多次,但通常第一层是水平的。在这种情况下,第一层需要垂直,子菜单应该飞出而不是下拉

最重要的是,整个事情是复杂的,因为第一级“包装”到设计中的曲线,菜单ul浮动以适应内部页面上的不同布局。浮动会导致各种问题的明显解决方案,因为如果z索引高于页面上的内容,则该内容中的链接将被顶级菜单项覆盖

不管怎样,我耐心地让它工作得很好,除了IE7和更低版本。我遇到的问题是IE希望将子菜单放在顶级菜单项下(这是IE的预期行为,我理解)。但是,由于顶级项位于曲线上,一些弹出菜单最终会被顶级项重叠

无可否认,作为一个糟糕的修复,我在CSS中使用了星型黑客技术,在弹出式菜单中添加了填充。这使它们具有功能性,但实际上无法解决问题或看起来很吸引人


所以,如果你有任何想法,请告诉我。谢谢

您需要将所有的
li
放在顶层,并在页面向下移动时将其z索引值逐渐设置得更低。例如,从顶部的“属性搜索”开始,将z索引值指定为99、98、97等。这样,每个
li
的子项(子菜单)将位于比页面上紧跟其后的根项更高的z索引堆栈上。

对于浮动问题:您可能有双边距错误。如果将一个元素向右浮动,那么ie6中的右边距会加倍,左边也是如此。你可以解决这个问题,这样你就可以制作一个内部div,并将填充应用到浮动div,剩下的样式应用到内部div。不,我没有任何关于双边距错误或边距大小的问题。IE中的额外填充是我故意添加的。谢谢。这是一个我没想到的好主意!我今天会试试,让你知道它是怎么回事。