HTML5+CSS3绘制锯齿状的矩形

时间:2021-05-08

最近通过敲Html5+Css3,分享一些自己认为值得学习的知识,分享给大家。

如何绘制一个锯齿状的矩形:如图

我们知道绘制图形可以用canvas ,canvas是HTML5出现的新标签,用于在网页上绘制图形,H5的canvas使用Javascript在网页上绘制图形。
如上锯齿状的矩形,就是用canvas绘制的。

实现代码:

XML/HTML Code复制内容到剪贴板
  • <!doctypehtml>
  • <htmllang="en">
  • <head>
  • <metacharset="UTF-8">
  • <title>锯齿图</title>
  • <scripttype="text/javascript">
  • window.addEventListener("load",eventWindowLoaded,false);
  • functioneventWindowLoaded(){
  • varx,y;
  • vartheCanvas=document.getElementById("canvas");
  • varcontext=theCanvas.getContext("2d");
  • context.strokeStyle='#CB9A61';
  • context.lineWidth=10;
  • context.strokeRect(10,10,theCanvas.width-20,theCanvas.height-20);
  • context.fillStyle="#FFFFFF";
  • for(x=5;x<=canvas.width;xx=x+10){
  • context.beginPath();
  • context.arc(x,5,5,0,Math.PI*2,true);
  • context.arc(x,canvas.height-5,5,0,Math.PI*2,true);
  • context.closePath();
  • context.fill();
  • }
  • for(y=5;y<=canvas.height;yy=y+10){
  • context.beginPath();
  • context.arc(5,y,5,0,Math.PI*2,true);
  • context.arc(canvas.width-5,y,5,0,Math.PI*2,true);
  • context.closePath();
  • context.fill();
  • }
  • }
  • </script>
  • </head>
  • <body>
  • <divstyle="position:absolute;top:100px;left:100px;">
  • <canvasid="canvas"width="400"height="170"top=50px;left=50px;>
  • </div>
  • </body>
  • </html>
  • 如何写如下这样一个形状,一个矩形分成两部分,用斜线隔开,两种颜色。如图:

    起初是这么一个思路,用一个div,中间画个斜线,分成两部分,两种颜色,但是没有实现,由于前台薄弱,能力有限,想到了另外一种方案。

    用三个div,左右是两个div,设置宽和高,起重要作用的其实是这一部分:

    其实就是一个矩形,分成两个三角形,最后实现了如上效果。换个思路,实现起来so easy,不能在一棵树上吊死。

    代码如下:

    XML/HTML Code复制内容到剪贴板
  • <!DOCTYPEHTML>
  • <htmllang="en">
  • <bodystyle="margin:0000;">
  • <divid="1"style="background-color:#727171;width:50px;height:20px;float:left"></div>
  • <divid="2"style="float:left;border-width:10px;border-color:#727171#9fa0a0#9fa0a0#727171;border-style:solid"></div>
  • <divid="3"style="background-color:#9fa0a0;width:50px;height:20px;float:left"></div>
  • </body>
  • </html>
  • 后续继续总结有关HTML和CSS的一些知识,前台的知识看上去简单,其实是个细致活,可以锻炼一个人的耐心。从简单到复杂,从入门到深入,一点点提高自己。

    声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

    相关文章