Javascript设置网页控件位置的方法

1936次阅读  |  发布于5年以前

先上代码:

//不使用任何框架的方式
document.getElementById("child").style.left="800px";
document.getElementById("child").style.top="200px";

//使用jquery框架的方式
//offset()获取当前元素基于浏览的位置  
var offsettop=$("#unamespan").offset().top;   
var offsetleft=$("#unamespan").offset().left;  
//position()获取当前元素基于父容器的位置             
var positiontop=$("#unamespan").position().top;  
var positionleft=$("#unamespan").position().left;  

//设置panel2的位置基于unamespan的坐标  
$("#panel2").css({position: "absolute",'top':offsettop+100,'left':offsetleft+50,'z-index':2}); 

需要注意的几点:

absolute:生成绝对定位的元素,相对于 static定位以外的第一个父元素进行定位。元素的位置通过 "left", "top", "right" 以及 "bottom"属性进行规定。
fixed:生成绝对定位的元素,相对于浏览器窗口进行定位。元素的位置通过 "left","top", "right" 以及 "bottom" 属性进行规定。
relative:生成相对定位的元素,相对于其正常位置进行定位。因此,"left:20"会向元素的 LEFT 位置添加 20 像素。
static:默认值。没有定位,元素出现在正常的流中(忽略 top, bottom, left,right 或者 z-index 声明)。
inherit: 规定应该从父元素继承 position属性的值。(ie中未支持此属性) 所有空间position的默认值为static,所以需要将其设置为其他属性 可进行定位

z-index 属性设置元素的堆叠顺序。拥有更高堆叠顺序的元素总是会处于堆叠顺序较低的元素的前面。

注意:元素可拥有负的 z-index 属性值。同时z-index 仅能在定位元素上奏效( position的值非static)!

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8