解決canvas畫(huà)布使用fillRect()時(shí)高度出現(xiàn)雙倍效果的問(wèn)題
當(dāng)設(shè)置canvas的寬度和高度時(shí),只有內(nèi)嵌css有效,外部css會(huì)出現(xiàn)拉伸的情況,例如:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script> window.onload=function(){ var canvas=document.getElementById('canvas').getContext('2d'); canvas.fillRect(50,50,50,50); } </script> <style> body{ background: #000; } #canvas{ width: 300px; height: 400px; background:#fff; } </style> </head> <body> <canvas id="canvas"> <span>不支持canvas標(biāo)簽</span> </canvas> </body> </html>
顯示情況如下:
該效果與我們預(yù)想的不同,此時(shí)有兩種修改方案:
(1) 在代碼js中添加設(shè)置寬高屬性的代碼設(shè)置寬度和高度:
canvas.setAttribute("height",canvas.clientHeight); canvas.setAttribute("width",canvas.clientWidth);
(2) 除去外部css中設(shè)置寬高屬性的代碼,給canvas標(biāo)簽直接添加寬度和高度屬性:
<canvas id="canvas" width="300" height="400" > <span>不支持canvas標(biāo)簽</span> </canvas>
最后顯示效果如下:
以上這篇解決canvas畫(huà)布使用fillRect()時(shí)高度出現(xiàn)雙倍效果的問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
關(guān)于元素的尺寸(dimensions) 說(shuō)明
在使用JavaScript腳本獲取元素的尺寸時(shí),有幾個(gè)屬性你需要弄清楚,不然會(huì)很棘手。2011-09-09一文總結(jié)JavaScript中常見(jiàn)的設(shè)計(jì)模式
在程序設(shè)計(jì)中有很多實(shí)用的設(shè)計(jì)模式,而其中大部分語(yǔ)言的實(shí)現(xiàn)都是基于“類(lèi)”。在程序設(shè)計(jì)中有很多實(shí)用的設(shè)計(jì)模式,而其中大部分語(yǔ)言的實(shí)現(xiàn)都是基于“類(lèi)”。,本文將總結(jié)了JavaScript中常見(jiàn)的十五種設(shè)計(jì)模式,感興趣的朋友可以參考下2023-05-05JavaScript數(shù)組問(wèn)題解決的多種方法
JavaScript數(shù)組問(wèn)題多種方法小結(jié),眾多blueidea高手聯(lián)袂打造2008-07-07js 利用image對(duì)象實(shí)現(xiàn)圖片的預(yù)加載提高訪問(wèn)速度
我們來(lái)學(xué)習(xí)一種名為圖像預(yù)裝載(image preloading)的小技巧來(lái)提高圖像訪問(wèn)速度,一些瀏覽器試圖通過(guò)在本地緩存中保存這些圖片來(lái)解決此問(wèn)題,感興趣的朋友可以了解下2013-03-03微信小程序訪問(wèn)mysql數(shù)據(jù)庫(kù)流程詳解
日常我們?cè)陂_(kāi)發(fā)小程序的時(shí)候,總是希望把數(shù)據(jù)提交回?cái)?shù)據(jù)庫(kù)進(jìn)行存儲(chǔ),那在小程序中該如何訪問(wèn)數(shù)據(jù)庫(kù)呢?本篇我們就介紹一下具體的思路2022-08-08javascript中setTimeout和setInterval的unref()和ref()用法示例
本文通過(guò)一個(gè)小例子想大家講解了setTimeout和setInterval的unref()和ref()用法和使用環(huán)境,代碼很簡(jiǎn)潔,有需要的小伙伴自己參考下吧。2014-11-11Bootstrap面板(Panels)的簡(jiǎn)單實(shí)現(xiàn)代碼
這篇文章主要為大家詳細(xì)介紹了Bootstrap面板(Panels)的簡(jiǎn)單實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03javascript結(jié)合fileReader 實(shí)現(xiàn)上傳圖片
FileReader具體支持哪些方法和事件,這里就不介紹了,有興趣的可以去w3c官網(wǎng)上看看FileReader介紹,這里主要介紹一下FileReader常見(jiàn)應(yīng)用,以及fileReader 實(shí)現(xiàn)上傳圖片示例分享。2015-01-01javascript table排序 這個(gè)更簡(jiǎn)單了,不用改變現(xiàn)在的表格結(jié)構(gòu)
另外一個(gè)table排序,這個(gè)更簡(jiǎn)單了,不用改變現(xiàn)在的表格結(jié)構(gòu),來(lái)自國(guó)外的代碼。2010-04-04