html5的canvas画线问题

代码如下:<!DOCTYPE><html><head><metacharset="utf-8"/><title>无标题文档</title><style>*{margin:... 代码如下:
<!DOCTYPE>
<html>
<head>
<meta charset="utf-8"/>
<title>无标题文档</title>
<style>
*{margin:0;padding:0;}
#canvas{width:500px;height:500px;display:block;margin:0 auto;border:1px solid black;}
</style>
<script type="text/javascript">
window.onload = function(){
var canvas = document.getElementById('canvas');
var context = canvas.getContext('2d');
context.beginPath();
context.moveTo(10,10);
context.lineTo(70,70);
context.stroke();
};
</script>
</head>
<body>
<canvas id="canvas">
</canvas>
</body>
</html>
这个网页画的线会感觉呗放大了,而且坐标也不对
但是我如果把canvas的width和height赋值方法换成width="500" height="500"(原来写在css里面是width:500px;height:500px)就完全正常了,主要是width="500"这种写法html5废除了啊,请问这是为什么啊?

正常:
展开
 我来答
shijian890717
2013-08-01 · 超过24用户采纳过TA的回答
知道答主
回答量:76
采纳率:0%
帮助的人:63.8万
展开全部
我已经做过canvas方面的开发了,对html5这个新的api很了解,首先你不要在style里面设width跟height,可以告诉你最后跟你设的坐标不一样,这里面原因是canvas的原始设置是有固定高跟宽的,所以你光设置style的css值,会产生很多问题,你就不要在css里面设,直接这样<canvas width="" height=""> 然后你为什么还会出现问题呢,你的canvas有自己的margin,所以它不是紧贴着最左上边的,你在style里面这样设html,body{margin=0;padding=0}#canvas{margin=0;padding=0},我估计你是在这里遇到问题了,你可以试试看
zhaoapk
2013-08-01 · TA获得超过3771个赞
知道大有可为答主
回答量:1343
采纳率:40%
帮助的人:1612万
展开全部
用css设置canvas的宽度和高度会放大或缩小画布。(默认宽度300,高度150)
要设置画布大小需要设置canvas标签的width,height属性。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式