代码之家  ›  专栏  ›  技术社区  ›  Q_Mlilo

CSS相对定位

  •  1
  • Q_Mlilo  · 技术社区  · 16 年前

    我正在开发一个具有动态尺寸的网页,即首先读取画布的大小,然后相应地调整元素的宽度和高度。

    if(!window.JSFX)
        JSFX=new Object();
    
    if(!JSFX.Browser)
        JSFX.Browser = new Object();
    
    if(navigator.appName.indexOf("Netscape") != -1)
    {
        JSFX.Browser.getCanvasWidth = function() {return innerWidth;}
        JSFX.Browser.getCanvasHeight    = function() {return innerHeight;}
    }
    else    if(document.all)    {
        JSFX.Browser.getCanvasWidth = function() {return document.body.clientWidth;}
        JSFX.Browser.getCanvasHeight    = function() {return document.body.clientHeight;}
    }
    
    function f(){
    var h = JSFX.Browser.getCanvasHeight();
    var w = JSFX.Browser.getCanvasWidth();
    var elem1 = document.getElementById("left");
    var elem2 = document.getElementById("right");
    
    if(h){
    elem1.style.height = (h-115)+"px";
    elem2.style.height = (h-95)+"px";
    elem2.style.width = (w-305)+"px";
    } 
    else return false; 
     } 
    
    window.onload = f;
    

    /html

    <div id="container">
               <div id="left">
               </div>
    
               <div id="right">
               </div> 
    </div>
    

    我的问题是,当我调整窗口的大小时,沙发会跳到整个地方。我需要关于CSS和javascript的帮助,我可以使用它们在调整窗口大小时调整divs的大小。

    谢谢。

    2 回复  |  直到 16 年前
        1
  •  1
  •   NimChimpsky    16 年前

    “位置:绝对” 和/或 “位置:固定”

        2
  •  0
  •   Paul D. Waite    16 年前

    我认为 window 对象具有 resize 当用户调整浏览器大小时激发的事件。

    所以,可以在JavaScript代码的末尾添加:

    window.onresize = f;