【发布时间】:2011-08-16 12:50:15
【问题描述】:
我已将边距、内边距和边框设置为零,但在 Firefox 和 Chrome 中我的画布和 div 周围仍有空间。显然,我不明白如何在 HTML 中贴合元素,希望能得到建议和指点。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Spacing Question</title>
<style type="text/css">
*
{
border: 0px;
margin: 0px;
padding: 0px;
}
canvas
{
width: 150px;
height: 150px;
}
body
{
background-color: Purple;
color: Silver;
}
</style>
<script>
function draw() {
var canvas = document.getElementById('canvas1');
if (canvas.getContext) {
var ctx = canvas.getContext('2d');
ctx.fillStyle = "rgb(200, 0, 0)";
ctx.fillRect(0, 0, 150, 150);
}
canvas = document.getElementById('canvas2');
if (canvas.getContext) {
var ctx = canvas.getContext('2d');
ctx.fillStyle = "rgb(0, 200, 0)";
ctx.fillRect(0, 0, 150, 150);
}
}
</script>
</head>
<body onload="draw()">
<canvas id="canvas1" width="150" height="150">
Fallback content 1.
</canvas>
<canvas id="canvas2" width="150" height="150">
Fallback content 2.
</canvas>
<div id="allYourControls">
</div>
</body>
</html>
【问题讨论】:
-
Canvas 不是 HTML 4.0 中的有效标签。
-
在这个问题中你在哪里看到 HTML 4.0?
-
糟糕 - 滚动过去,只看到 。我的错。
-
看来 Firefox 和 Chrome 都不太担心 DOCTYPE 中的 HTML 4.0,反正都支持 Canvas 标签。
-
我发现了这个问题,因为我对画布周围的空间有不同的问题。如果您将
<!doctype html>添加到顶部,并在您的画布周围添加<div style='border:1px solid white'>之类的内容,您可能会在它们下方看到空间,在div 的边界内。要摆脱这种情况,请在画布上设置vertical-align:bottom。
标签: html css firefox google-chrome canvas