我正在尝试使用javascript动态创建随机数量的框。但是,我有点迷失了如何这样做。我以为我会先试着在html上创建盒子。所以,这是我的HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Ramdom Boxes</title>
<script src="A2Q1.js"></script>
</head>
<div id="piece8" class="pieces" style="color:#0000ff; top: 50px; left: 50px; width: 60px; height: 60px; cursor: pointer;"></div>
<body>
</body>
</html>
不知怎的,盒子没有出现。但是,当我在浏览器中检查元素时,它似乎在那里,但没有颜色。如何修复此问题以显示一个简单的2d框
答案 0 :(得分:1)
我应该看起来像这样:http://jsfiddle.net/FHUeE/
并且background-color:#0000ff;
而非color:#0000ff;
color
用于字体颜色。
答案 1 :(得分:1)
您只需要确保所有内容都在<body>
和</body>
标记之间。
如果要显示颜色,还需要使用css属性background-color。颜色会改变文字颜色:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Ramdom Boxes</title>
<script src="A2Q1.js"></script>
</head>
<body>
<div id="piece8" class="pieces" style="background-color:#0000ff; top: 50px; left: 50px; width: 60px; height: 60px; cursor: pointer;"></div>
</body>
</html>
答案 2 :(得分:1)
这可能会让你:
http://codepen.io/anon/pen/FjrxA
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Random Boxes</title>
</head>
<body>
<script>
// Make a loop to create a random amount of boxes
var box_count = Math.random() * 100 + 50;
for (var i = 0; i < box_count; i++) {
// Define an array of css attributes
var attr =[
// Assign a colour to the box
'background-color:#' + parseInt(Math.random() * 0xFFFFFF, 10).toString(16),
// Place the box somewhere inside the window
'left:' + Math.random() * window.innerWidth + 'px',
'top:' + Math.random() * window.innerHeight + 'px',
// Give the box a random size
'width:' + Math.random() * 100 + 'px',
'height:' + Math.random() * 100 + 'px','position: absolute'
];
// Join the attributes together with semi-colon and write the div to the document
// Note: Document write happens at the place where the script is executed
document.write('<div style="' + attr.join(';') +'"></div>');
}
</script>
</body>
</html>