• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com专业计算机教程网站
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure
您的位置:首页 > 网页设计 >html5 > HTML5 canvas画布的宽高为什么写在<canvas>标签里的详细介绍

HTML5 canvas画布的宽高为什么写在<canvas>标签里的详细介绍

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-12-03

本文主要包含HTML5 ,canvas等相关知识,匿名希望在学习及工作中可以帮助到您
  以前用canvas画图时,都是直接在canvas标签里直接写上宽高,没有问题,但也没有探究过为什么宽高要直接写在canvas标签里,因为各个资料的例子上都是这么写的。今天王sir提出了一个问题:如果把宽高写在<style>里,看看会有什么不同。自己试了以下,果然有问题。

先看一下代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>canvas</title>
<meta name="Keywords" content="">
<meta name="author" content="@my_programmer">
<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>里的效果:

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

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

以上就是HTML5 canvas画布的宽高为什么写在<canvas>标签里的详细介绍的详细内容,更多请关注微课江湖其它相关文章!

您可能想查找下面的文章:

  • HTML5的本地存储
  • Define charset for HTML5 Doctype
  • HTML5 canvas如何绘制动态径向渐变
  • 如何使用HTML5 Canvas绘制动态线性渐变
  • HTML5 canvas如何实现马赛克的淡入淡出效果(代码)
  • HTML5 canvas中如何绘制图像
  • 如何使用HTML5 canvas实现图像的马赛克
  • html5 canvas实现简单的双缓冲
  • HTML5 Canvas 图形组合是如何实现的?附代码
  • HTML5 figure标签是什么意思?HTML5 figure标签的使用方法详解

相关文章

  • 2018-12-03HTML5地理位置定位Geolocation-API及Haversine地理空间距离算法(图文)
  • 2018-12-03HTML5的新特性(1) _html5教程技巧
  • 2018-12-03html5新增加的标签有哪些
  • 2018-12-03HTML5实践-使用css创建三角形和使用CSS3创建3d四面体的代码详解
  • 2018-12-03xml跟html有关系吗?
  • 2018-12-03HTML5注册表单的自动聚焦与占位文本示例代码_html5教程技巧
  • 2018-12-03借助toDataURL实现将HTML5 Canvas的内容保存为图片
  • 2018-12-03html5移动端Meta的设置
  • 2018-12-03HTML 5标签、属性、事件及兼容性速查表
  • 2018-12-03关于html5中标签video播放的新解析

文章分类

  • html/xhtml
  • html5
  • CSS
  • XML/XSLT
  • Dreamweaver教程
  • Frontpage教程
  • 心得技巧
  • bootstrap
  • vue
  • AngularJS
  • HBuilder教程
  • css3
  • 浏览器兼容
  • div/css
  • 网页编辑器
  • axure

最近更新的内容

    • 使用HTML5 Canvas为图片填充颜色和纹理的教程_html5教程技巧
    • H5页面在iOS网页中的数字被识别为电话号码数字颜色自动被改变成蓝色
    • HTML5标准学习-简介介绍
    • nw.js 如何禁用向主窗口拖放文件?
    • H5的多线程(Worker SharedWorker)使用详解
    • 关于html5中的localstorage详细介绍(图)
    • html5中在元素滚动条在滚动时触发的事件onscroll
    • 前端面试问“你会HTML5吗”到底是什么个意思?
    • HTML5标签嵌套规则详解【必看】_html5教程技巧
    • html5 aside标签有什么用?html5 aside标签的使用总结(附实例)

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有