canvas教程

canvas需要在标签里直接定义宽高

字号+ 作者:H5之家 来源:H5之家 2017-05-16 14:05 我要评论( )

当前位置 : 首页 网页制作 canvas需要在标签里直接定义宽高 以前用canvas画图时,都是直接在canvas标签里直接写上宽高,没有问题,但也没有探究过为什么宽高要直接写在canvas标签里,因为各个资料的例子上都是这么写的。今天王sir提出了一个问题:如果把宽高

当前位置 : 首页> 网页制作

canvas需要在标签里直接定义宽高

以前用canvas画图时,都是直接在canvas标签里直接写上宽高,没有问题,但也没有探究过为什么宽高要直接写在canvas标签里,因为各个资料的例子上都是这么写的。今天王sir提出了一个问题:如果把宽高写在<style>里,看看会有什么不同。自己试了以下,果然有问题。

先看一下代码:

代码如下:

<!doctype html>

<html>

<head>

<meta charset=utf-8>

<title>canvas</title>

<meta name=keywords content=>

<meta name=author>

<style type=text/css>

body{margin:0;}

canvas{margin:20px;

/*width: 400px;

height: 300px;*/

}

</style>

</head>

<body onload=draw()>

<canvas id=canvas width=400 height=300 style=border:1px solid #f00;></canvas>

<script>

function draw() {

var canvas=document.getelementbyid('canvas');

var context=canvas.getcontext('2d');

context.beginpath();

context.moveto(20,20);

context.lineto(200,100);

context.linewidth=5;

context.stroke();

}

</script>

</body>

</html>

1.宽:400;高:300;直接写在<canvas>里的效果:

名单

2、删除<canvas>里的宽高,宽:400;高:300;写在<style>里的效果:

名单1

为什么两者的效果会不一样呢?

canvas跟其他标签一样,也可以通过css来定义样式。但这里需要注意的是:canvas的默认宽高为300px * 150px,在css中为canvas定义宽高,实际上把宽高为300px * 150px的画布进行了拉伸,如果在这样的情况下进行canvas绘图,你得到的图形可能就是变形的效果。所以,在canvas绘图时,应该在canvas标签里直接定义宽高。

更多网页制作信息请查看: 网页制作

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 基于html5 Canvas图表库 : ECharts

    基于html5 Canvas图表库 : ECharts

    2017-05-16 15:00

  • HTML5中的nav标签学习笔记

    HTML5中的nav标签学习笔记

    2017-05-16 10:02

  • 能设计还能测试 耐克正尝试用戴尔Canvas平板电脑和AR眼镜设计鞋

    能设计还能测试 耐克正尝试用戴尔Canvas平板电脑和AR眼镜设计鞋

    2017-05-16 09:00

  • HTML5 Canvas和EaselJS入门(译)

    HTML5 Canvas和EaselJS入门(译)

    2017-05-16 08:05

网友点评
/