CSS:当我追加新的div元素时,z-index不能正常工作
我想实现关于绘制由div元素配置的一些矩形和贴纸的网站。
要添加标签或矩形,请单击按钮。
我想按以下顺序排列div元素
(上)贴纸>机架>矩形>帆布(下)
所以我在样式表中使用了z-index。
#canvas { position: relative; z-index: 1; ... } .rectangle { position: absolute !important; z-index: 2 !important; ... } .rack { position: absolute !important; z-index: 3 !important; ... } .sticker { position: absolute !important; z-index: 4 !important; ... }
当元素由html代码分配时,它运行良好。
当我单击按钮将元素附加到canvas时,它无法正常工作。
即使矩形的z-index低于贴纸,新的矩形也会覆盖贴纸。
我认为这些的z-index如下所示
(上)新贴纸>新机架>新矩形>旧贴纸>旧机架>旧矩形(下)
我该如何解决这个错误。
请参考这个小提琴( http://jsfiddle.net/crisply/bD35Z/9/ )
将新元素追加到DOM时, z-index
将返回0
。 我没有在其他浏览器上测试过这个,但它发生在Chrome中。
您必须在附加元素上手动设置z-index
,或者编写一些逻辑以自动为元素分配z-index
值。
为了使用z-index proprety, 你必须将 css中 div的位置定义为: absolute,relative或fixed