【发布时间】:2011-09-06 08:40:18
【问题描述】:
我有一个使用固定定位的 div,z-index 为 100,我想与页面上的所有其他元素重叠。我在使用 jquery ui 选项卡和动态生成的 html 时遇到了一些问题。
好像是因为tab里面的内容是动态生成的,所以栈顺序比较高,所以和我的div元素重叠了。有没有办法让 div 始终位于堆栈顺序的顶部?
我也尝试将 .ui-tabs 类的 z-index 顺序设置为 0(没用)
【问题讨论】:
我有一个使用固定定位的 div,z-index 为 100,我想与页面上的所有其他元素重叠。我在使用 jquery ui 选项卡和动态生成的 html 时遇到了一些问题。
好像是因为tab里面的内容是动态生成的,所以栈顺序比较高,所以和我的div元素重叠了。有没有办法让 div 始终位于堆栈顺序的顶部?
我也尝试将 .ui-tabs 类的 z-index 顺序设置为 0(没用)
【问题讨论】:
HTML 是动态生成的这一事实对 z-index 没有影响。我认为您更有可能在 CSS 上犯了错误。 Z-index 可能是一个棘手的属性,但确保它正常工作的方法是在每个可能干扰它的元素上声明一个 position: 属性。这可能意味着您只需要在要确保重叠的元素上声明 position:relative 和 z-index:0。
如果您可以发布生成的 HTML 和影响它的 CSS(即在页面中加载动态生成的 HTML 之后),那也可能会有所帮助。
【讨论】:
您也许可以编写一些花哨的 JS 来自动调整 z-index,但我怀疑这是必要的。
HTML 和 CSS 中更可能存在错误。 链接到相关页面,或将源保存在pastebin.com 并链接到该页面。
一般:
<body> 标记之后,即使它是单独定位的。z-index 为 100,不足以保证它具有最高值。我见过sites use z-indices of 199999 (EG: div#control) 或更高版本!opacity 设置。见:
【讨论】: