2013-03-11 71 views
0

我使用<canvas>为班级项目做跳棋板。出于某种原因,我的画布以偏移量开始,我无法修复它。 enter image description here画布有偏移量

我不想发布太多的代码,因为它是一项家庭作业,我不希望人们为我解决它。 我曾尝试将<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">,但它不工作。 我基本上做的是从0到8的i和j的嵌套for循环。 和我正在改变基于偶数/奇数位置的颜色。在我决定了我的颜色后,我在做ctx.fillRect(i*50 ,j*50,50,50)

任何想法,这个偏移量可以从哪里来? 谢谢

+0

你能告诉我们,如果这是一个画布中的偏移量,或者它是否是一个在DOM画布的偏移?我猜想后者,你可以用CSS来解决这个问题。 – fuzic 2013-03-11 01:16:29

+0

你有没有尝试重置CSS? http://meyerweb.com/eric/tools/css/reset/ – 2013-03-11 01:17:47

+0

偏移量在画布内,如果我做ctx.fillRect(i * 50 +10,j * 50,50,50),板子会移动在这个灰色区域内,线条仍然停留在那里 – Quantico 2013-03-11 01:29:30

回答

0

您的画布尺寸是400 x 400?还有一个容器是用一种灰色背景(#808080)来保存画布的吗?

如果是这样,这是一个CSS问题。试着让画布呈现一种浮动风格:左边。或者将画布完全放置在容器内。

<canvas width="400" height="400" style="float:left"></canvas> 

<div style="position:relative"><!-- containing element --> 
    <canvas width="400" height="400" style="top:0; left:0;position:absolute"> 
    </canvas> 
</div> 
+0

float:left解决了问题。你能解释一下CSS问题的根源吗? – Quantico 2013-03-11 02:35:29

+0

很难说没有看到你的HTML/CSS,但左偏移可能是由空白字符引起的。我不确定为什么偏移出现在底部,我只是知道,如果不在元素的容器中浮动元素,元素的末尾和容器的末端之间可能会出现少量空间。 – bwroga 2013-03-11 02:44:46

+0

我的画布不是一个div容器内时,它是一个表 ' <画布ID = “游戏键盘” 宽度= “400” HEIGHT = “400”> '内。另外,我很抱歉,我无法共享代码,我认为如果我分享代码不公平,我认为它会允许人们评论我的代码,并以一种会给我带来不公平优势的方式进行评论分级 – Quantico 2013-03-11 02:49:50