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废除了啊,请问这是为什么啊?
正常: 展开
<!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废除了啊,请问这是为什么啊?
正常: 展开
展开全部
我已经做过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},我估计你是在这里遇到问题了,你可以试试看
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询