为什么appendChild会忽略zIndex
Why would appendChild disregard zIndex?
我有一种非常奇怪的情况,我将子级(缩略图)附加到div,然后将一个大的阻塞div附加到父级div(都使用appendChild),并且毫无理由地,我可以看到拇指div最终显示在阻塞div上方(即使在元素检查器中,它们位于正确的节点层次结构中)。
要清楚。
<div id="P">
<div id="thumbs"></div>
</div>
pseudo script:
fill thumbs with THUMB divs ;
P.appendChild(large blocker) ;
在这个过程之后,元素检查器显示:
<div id="P">
<div id="thumbs">
<div thumb><div thumb>.... n number of times
</div>
<div blocker>
</div>
但拇指出现在阻挡器上方。我不会在任何事情上设置zIndex。拇指被设置为显示:内联块;有没有什么明显的原因让他们不支持拦截div?
除非您使用CSS操作对象以某种方式重叠,否则对象将按顺序排列,以免重叠。您的拇指位于HTML中的blocker-div之前,因此它们应该在页面中的blocker-div之前进行布局并分配一个位置,听起来就像您所看到的一样。这是预期的行为。
如果您希望将块div放在页面的拇指之前,请将其放在HTML的拇指之前(或使用float或position:absolute)。
如果你想让拦截器div在拇指上,你需要让容器position: relative
和拦截器position: absolute
,并给它一个合适的z索引,让它在上面。
下面是一个将拦截器div放置在拇指上方的示例:http://jsfiddle.net/jfriend00/cxkmp/.我只把它放了一部分,这样你就可以看到它是如何遮住后面的大拇指的。
仅供参考:您的示例HTML没有正确关闭的div标记,所以您真正的HTML就是这样,这也可能导致巨大的混乱。
仅供参考:z-index
适用于非position:static
的对象(例如,最常见的position: absolute
)。作为position:static
的对象以子顺序显示,而不考虑z-index
。
- appendChild在函数外部工作,但在函数内部不工作
- Highcharts 3d调整zindex错误
- 我该如何解决这个问题?“未捕获的类型错误:无法读取 null 的属性'appendChild'”
- 元素.appendChild()插入IE.变通方法?(与innerText与textContent相关)
- 为什么不是't我的appendChild正在使用createDocumentFragment
- 使用appendChild()动态添加的脚本是按顺序执行还是并行执行
- React AppendChild组件没有'不起作用
- 在循环遍历对象 HTMLDivElement 时,应用 ChileNode 样式 zindex 在 firefox 和
- 不显示为表单元素的图像输入按钮的动态创建和appendChild
- AppendChild Form / Table [Javascript/Html/PHP]
- 收到错误:无法在“节点”上执行“appendChild”:参数 1 的类型不是“节点”
- Node.appendChild的参数1不是对象
- 无法调用方法'appendChild'为null
- html5拖动&drop-TypeError:Node.appendChild的参数1不是对象
- 文档本身(正文)中的HTML-appendChild()
- appendChild上的错误-试图在不存在节点的上下文中引用该节点
- 未捕获的类型错误:无法读取属性'zIndex'Ionic(AngularJS)中未定义的
- 使用appendchild或其他方法向ul添加html代码而不是纯文本
- appendChild dataURI映像到window.open在IE中失败
- 为什么appendChild会忽略zIndex