如何使用绝对位置动态创建div

时间:2016-02-29 09:31:59

标签: html css

str.Append("<div class=\"rect\" style=\"top:" + (rectangles.ElementAt(i).Y + 50).ToString() + "px;left:" + (rectangles.ElementAt(i).X + 50).ToString() + "px;width:" + (rectangles.ElementAt(i).Width - 1).ToString() + "px;height:" + (rectangles.ElementAt(i).Height - 1).ToString() + "px;position:absolute;\"</div>");

我正在创建这个div和更多已定位为绝对的div,然后将创建的html发送到另一个div(容器)。这样它就可以创建一个附加图像的地图

enter image description here

1 个答案:

答案 0 :(得分:0)

您可以将动态<div>括在父<div>宽{strong> 0像素中,并使用left: 50%; top: 50%;绝对位于页面中心

<强> CSS

.bd_container {
  position: absolute;
  height: 0;
  width: 0;
  top: 50%;
  left: 50%;
}    

#bigdiv1 {
  position: absolute;
  height: 200px; /* Static height */
  width: 200px; /* Static width */
  background: blue;
  left: -100px;
  top: -100px;
}

#bigdiv2 {
  position: absolute;
  background: orange;
}
带静态尺寸的

HTML

<div class="bd_container">
  <div id="bigdiv1"> <!-- Replace with your div -->
    <strong>Div 1</strong>
    <br /> With static dimensions and centered
  </div>
</div>
具有动态尺寸的

HTML

<div class="bd_container">
  <div id="bigdiv2"> <!-- Replace with your div -->
    <strong>Div 2</strong>
    <br /> With dynamic dimensions and centered
  </div>
</div>

要定位您的动态<div>,您可以使用jQuery css() function,如下所示:

var d2_width = parseInt($("#bigdiv2").css("width")) / 2;
var d2_height = parseInt($("#bigdiv2").css("height")) / 2;

$("#bigdiv2").css({
  "left": "-" + d2_width + "px",
  "top": "-" + d2_height + "px"
});

这是demo给你的