我正在创建一个div框,该框应保存用户上传(预览)的图像。 但是会创建div,但是图像不会附加到该div。该ID已分配给div,但以某种方式我无法通过ID定位DIV。 我已经看过stackoverflow,但是没有真正找到与此问题有关的任何信息
代码:
function readURL(input) {
if (input.files && input.files[0]) {
$('#imagePreview').slideUp();
for (var i = 0; i < input.files.length; i++) {
let reader = new FileReader();
let card = document.createElement('div');
card.setAttribute('class', 'card col-md-4');
let header = document.createElement('div');
header.setAttribute('class', 'card-header');
let body = document.createElement('div');
body.setAttribute('class', 'card-body');
body.setAttribute('id', i);
$('#imgUploadBody').append($(card).append(header, body));
let img = new Image();
reader.onload = function(e) {
img.src = e.target.result;
$('#'+i).append(img);
}
reader.readAsDataURL(input.files[i]);
}
}
}
我尝试使用不同的选择器,尝试将图像直接插入主体(直接附加到主体中),后者确实起作用,但是图像并不关心其父级大小。图像没有边界,并且具有自己的宽度和高度,而不是尊重父级div
的宽度和高度。
所以我要寻找的是:图像应附加到div
(正文)中,以使图像尊重父级div
的高度和宽度。
它可以以任何方式或形状完成。我不必使用ID作为选择器。如果您有一个想法涉及选择div
元素的另一种方式,请把它扔在那里
答案 0 :(得分:1)
在CSS中,标识符(包括元素名称,类和ID) 选择器)只能包含字符[a-zA-Z0-9]和ISO 10646 字符U + 00A0及更高版本,加上连字符(-)和下划线 (_);他们不能以数字,两个连字符或后面的连字符开头 用一个数字
不是让#0
变成#card0