我一定是遗漏了一些关于z-index的东西。看看这段代码:
var span = document.createElement('span');
span.innerHTML = '<div style="background: none repeat scroll 0px 0px' +
'#000000; opacity: 0.7; display: block; top: 0px; bottom: 0px; ' +
'left: 0px; right: 0px; position: fixed; z-index: 1;"></div>';
span.innerHTML += '<div id="fancybox-wrap" style="opacity: 1; ' +
'width: 420px; height: 200px; top: 467px; left: 481.5px; ' +
'display: block; z-index: 2; ' +
'border: 1px solid black;">Inside div</div>';
document.body.appendChild(span);基于第二个div具有更高的z索引的事实,它是否应该位于第一个div的顶部?
看看http://jsfiddle.net/qwertymk/TQSkX/,就明白我的意思了
发布于 2010-12-24 02:46:07
z-index不适用于position: static类型的元素(这是默认值)
发布于 2010-12-24 02:48:38
您需要在css中的第二个div上设置位置,以便读取z索引。
将position: relative;添加到您的第二个div中,它应该可以正常工作。
var span = document.createElement('span');
span.innerHTML = '<div style="background: none repeat scroll 0px 0px' +
'#000000; opacity: 0.7; display: block; top: 0px; bottom: 0px; ' +
'left: 0px; right: 0px; position: fixed; z-index: 1;"></div>';
span.innerHTML += '<div id="fancybox-wrap" style="opacity: 1; ' +
'width: 420px; height: 200px; top: 467px; left: 481.5px; ' +
'display: block; position: relative; z-index: 2; ' +
'border: 1px solid black;">Inside div</div>';
document.body.appendChild(span);https://stackoverflow.com/questions/4521531
复制相似问题