为什么图片在上,颜色在下,没有图片在下,颜色在上?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | <!DOCTYPE html> < html > < head > < meta charset = "UTF-8" > < title >canvas图片</ title > < style > canvas{background-color:lightblue;} </ style > </ head > < body > < canvas id = "canvas" width = "800px" height = "800px" >您的浏览器不支持canvas </ canvas > < script > var canvas=document.getElementById("canvas"); var context=canvas.getContext('2d'); context.translate(400,400); context.beginPath(); var img = new Image(); img.src = "http://img1.sycdn.imooc.com/climg//59859f4d00014f1503000100.jpg"; img.onload=function(){ context.drawImage(img,-75,-25,150,50); }; context.arc(0,0,150,0,2*Math.PI,true); context.fill(); </ script > </ body > </ html > |
就是看不见图片,被颜色挡住了
21
收起
正在回答
2回答
同学你好,非常抱歉,老师看错了,以为同学要表达的是图片显示不出来。
这里若是想让背景覆盖到图片上,可以将img.onload去掉,例:
这是因为代码按照从上到下的顺序执行,但是当图片加载这里,是图片加载完才插入的。而这个时候,继续往下执行,已经填充完了,所以背景是在下面的。
而若是去掉加载完插入,直接插入。然后再填充,背景就在上面了。
如果我的回答帮助了你,欢迎采纳,祝学习愉快~
3.WebAPP开发与小程序
- 参与学习 人
- 提交作业 622 份
- 解答问题 6815 个
微信带火了小程序,也让前端工程师有了更多的展现机会,本阶段带你从移动基础知识的学习到webAPP开发,及小程序开发,让你PC端与移动端两端通吃。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧