2011-01-31 84 views
3

如何将div放置在另一个元素下而不影响div元素的其余部分?在另一个元素下放置一个div

<div style="margin:50px"> 
    <div style="margin:20px; padding:10px; width:100px"> 
     here is a little <span id="test" style="font-weight:bold">test</span>.. some text some text some text some text 
    </div> 
</div> 
<script> 
    var elm = document.getElementById('test'); 
    var div = elm.appendChild(document.createElement('div')); 
    with(div){ 
     style.position = 'relative'; 
     style.left = elm.offsetLeft+'px'; 
     style.background = '#ffffff'; 
     style.width = '100px'; 
     style.height = '50px'; 

     innerHTML = 'wooop'; 
    } 
</script> 

回答

1

style.left = elm.offsetLeft + "px";

+0

当然是肯定的。但我刚刚发现我需要的相对位置来代替,但相对会影响其他元素。 – clarkk 2011-01-31 23:28:48

2

使用css属性z-index或JavaScript样式属性zIndex。

z-index定义图层的高度。画布(通常是身体标签)使用z-索引0.任何高于身体的东西,任何低于下面的东西。

CSS例子:

<style type="text/css"> 
.my_layer { 
    display: block; 
    position: absolute; 
    z-index: 10; 
    top: 10px; 
    left: 10px; 
    width: 100px; 
    height: 100px; 
} 
</style> 

JavaScript示例:

<script type="text/javascript"> 
    el = document.getElementById("my_div") 
    with(el) { 
    style.zIndex = 10; 
    style.display = "block"; 
    style.position = "absolute"; 
    style.top = "10px"; 
    style.left = "10px"; 
    style.width = "100px"; 
    style.height = "100px"; 
    } 
</script>