可以'不要在图像上动态添加文本

can't add text over image dynamically

本文关键字:图像 动态 添加 文本 可以      更新时间:2023-09-26

我正在使用HTML5+Javascript设计移动网页。我通过javascript动态添加了一个图像。但是,当我试图在图像上动态设置文本时,它不起作用。

我希望文本显示在图像上。我的代码是;

  <script>
  for(var i=0;i<5;i++) {
  var ele = document.getElementById('container');
  var table = document.createElement('table');
  table.className = 'c1';
  var tr = document.createElement('tr');
  var td = document.createElement('td');
  /* image added dynamically */
  var img = new Image();
  img.src = "Images/car.jpeg";
  img.className = 'c3';
  var txt = document.createTextNode('IE8');
  td.appendChild(img);
  img.appendChild(txt);
  tr.appendChild(td);
  table.appendChild(tr);
  ele.appendChild(table);
  }
  <style> .img{height:50px;width:50px;}
  .c1 {height:60px; width:100px;} 
  </style>
  <body id='container'></body>

我尝试添加一个div组件&然后添加文本+背景图像。这也不起作用。

更好的选择是将图像设置为文本容器的CSS image-background属性。

<td style="background-image: url('path_to_image');">

一个不太好的技术是将文本放在一个浮动的容器上,绝对位置(这可能需要JS)和z索引大于图像元素。

按照@Edorka的建议试试

td.backgroundImage="url('Images/car.jjpe')";

不要创建img元素。