佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > canvas需要在標(biāo)簽里直接定義寬高

canvas需要在標(biāo)簽里直接定義寬高

熱門(mén)標(biāo)簽:百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式 使用U盤(pán)裝系統(tǒng) 美圖手機(jī) 智能手機(jī) 網(wǎng)站建設(shè) 阿里云 檢查注冊(cè)表項(xiàng) 硅谷的囚徒呼叫中心

  以前用canvas畫(huà)圖時(shí),都是直接在canvas標(biāo)簽里直接寫(xiě)上寬高,沒(méi)有問(wèn)題,但也沒(méi)有探究過(guò)為什么寬高要直接寫(xiě)在canvas標(biāo)簽里,因?yàn)楦鱾€(gè)資料的例子上都是這么寫(xiě)的。今天王sir提出了一個(gè)問(wèn)題:如果把寬高寫(xiě)在<style>里,看看會(huì)有什么不同。自己試了以下,果然有問(wèn)題。

先看一下代碼:


復(fù)制代碼
代碼如下:

<!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;直接寫(xiě)在<canvas>里的效果:

2、刪除<canvas>里的寬高,寬:400;高:300;寫(xiě)在<style>里的效果:

  為什么兩者的效果會(huì)不一樣呢?

  canvas跟其他標(biāo)簽一樣,也可以通過(guò)css來(lái)定義樣式。但這里需要注意的是:canvas的默認(rèn)寬高為300px * 150px,在css中為canvas定義寬高,實(shí)際上把寬高為300px * 150px的畫(huà)布進(jìn)行了拉伸,如果在這樣的情況下進(jìn)行canvas繪圖,你得到的圖形可能就是變形的效果。所以,在canvas繪圖時(shí),應(yīng)該在canvas標(biāo)簽里直接定義寬高。

標(biāo)簽:通遼 山南 煙臺(tái) 湘潭 黃山 湖北 賀州 懷化

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《canvas需要在標(biāo)簽里直接定義寬高》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    项城市| 南丹县| 铁岭县| 铁力市| 喀喇沁旗| 汉中市| 遵义市| 治县。| 且末县| 天门市| 营山县| 都江堰市| 宝鸡市| 桃园市| 白玉县| 福泉市| 磴口县| 义乌市| 广平县| 汽车| 榆树市| 通许县| 阆中市| 内丘县| 若羌县| 云林县| 中卫市| 澳门| 竹山县| 泊头市| 三江| 三都| 长泰县| 高雄县| 麦盖提县| 宕昌县| 南川市| 柯坪县| 罗城| 盐池县| 吉木萨尔县|