2016-01-21 32 views
1

我嘗試將img放入div,在特定位置(200,100),但始終位於左上角(0,0)。我究竟做錯了什麼?圖像元素未正確放置在div內

<!doctype html> 
<html> 
<head> 
    <title>Matching Game</title> 
    <meta http-equiv="content-type" content="text/html; charset=utf-8" /> 
</head> 
<body id="theBody" onload="build_set()"> 
    <h1>Matching Game</h1> 
    <div id="leftSide" style="position:absolute; top:100px; left:0; width:500px; height:500px"></div> 
    <div id="rightside" style="position:absolute; top:100px; left:500px; width:500px; height:500px; border-left:3px solid black"></div> 
    <script> 
     function build_set() { 
      var leftSide = document.getElementById("leftSide"); 
      var rightSide = document.getElementById("rightSide"); 
      var smile = document.createElement("img"); 
      smile.setAttribute("src", "http://home.cse.ust.hk/~rossiter/mooc/matching_game/smile.png") 
      smile.style.top = "200px"; 
      smile.style.left = "100px"; 
      leftSide.appendChild(smile); 
     } 
    </script> 
</body> 
</html> 

回答

1

圖像不是絕對定位,所以lefttop將被忽略。

以下內容添加到您的javascript:

smile.style.position = 'absolute'; 

這裏的工作版本jsFiddle

5

您還需要爲img設置position。這裏的jsFiddle

 function build_set() { 
 
      var leftSide = document.getElementById("leftSide"); 
 
      var rightSide = document.getElementById("rightSide"); 
 
      var smile = document.createElement("img"); 
 
      smile.setAttribute("src", "http://home.cse.ust.hk/~rossiter/mooc/matching_game/smile.png") 
 
      smile.style.top = "200px"; 
 
      smile.style.left = "100px"; 
 
      smile.style.position = "absolute"; 
 
      leftSide.appendChild(smile); 
 
     } 
 
     build_set();
<h1>Matching Game</h1> 
 
    <div id="leftSide" style="position:absolute; top:100px; left:0; width:500px; height:500px"></div> 
 
    <div id="rightside" style="position:absolute; top:100px; left:500px; width:500px; height:500px; border-left:3px solid black"></div>

+0

非常感謝您的快速回答! – swissfritz