HTML5+CSS3绘制锯齿状的矩形


Posted in HTML / CSS onMarch 01, 2016

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

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

HTML5+CSS3绘制锯齿状的矩形

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

实现代码:

XML/HTML Code复制内容到剪贴板
  1. <!doctype html>     
  2. <html lang="en">     
  3.     <head>     
  4.         <meta charset="UTF-8">     
  5.         <title>锯齿图</title>     
  6.         <script type="text/javascript">     
  7.         window.addEventListener("load", eventWindowLoaded, false);     
  8.         function eventWindowLoaded(){     
  9.             var x,y;     
  10.             var theCanvas = document.getElementById("canvas");     
  11.             var context = theCanvas.getContext("2d");     
  12.             context.strokeStyle = '#CB9A61';      
  13.             context.lineWidth=10;     
  14.             context.strokeRect(10,  10, theCanvas.width-20, theCanvas.height-20);     
  15.             context.fillStyle = "#FFFFFF";     
  16.             for(x=5;x<=canvas.width;xx=x+10){     
  17.                 context.beginPath();     
  18.                 context.arc(x,5,5,0,Math.PI*2,true);     
  19.                 context.arc(x,canvas.height-5,5,0,Math.PI*2,true);     
  20.                 context.closePath();     
  21.                 context.fill();     
  22.             }     
  23.             for(y=5;y<=canvas.height;yy=y+10){     
  24.                 context.beginPath();     
  25.                 context.arc(5,y,5,0,Math.PI*2,true);     
  26.                 context.arc(canvas.width-5,y,5,0,Math.PI*2,true);     
  27.                 context.closePath();     
  28.                 context.fill();     
  29.             }     
  30.         }     
  31.         </script>     
  32.     </head>     
  33. <body>     
  34.     <div style="position: absolute; top: 100px; left: 100px;">     
  35.     <canvas id="canvas" width="400" height="170" top=50pxleft=50px;>     
  36.     </div>     
  37. </body>     
  38. </html>     

如何写如下这样一个形状,一个矩形分成两部分,用斜线隔开,两种颜色。如图:

HTML5+CSS3绘制锯齿状的矩形

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

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

HTML5+CSS3绘制锯齿状的矩形

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

代码如下:

XML/HTML Code复制内容到剪贴板
  1. <!DOCTYPE HTML>     
  2. <html lang="en">     
  3.      
  4. <body style="margin: 0 0 0 0;">     
  5.     <div id="1" style="background-color:#727171;width:50px;height:20px;float:left" ></div>     
  6.     <div id="2" style="float:left;border-width:10px;border-color:#727171 #9fa0a0 #9fa0a0 #727171;border-style:solid"></div>     
  7.     <div id="3" style="background-color:#9fa0a0;width:50px;height:20px;float:left" ></div>     
  8. </body>     
  9. </html>     

后续继续总结有关HTML和CSS的一些知识,前台的知识看上去简单,其实是个细致活,可以锻炼一个人的耐心。从简单到复杂,从入门到深入,一点点提高自己。

HTML / CSS 相关文章推荐
纯css3制作网站后台管理面板
Dec 30 HTML / CSS
CSS+jQuery实现的在线答题功能
Apr 25 HTML / CSS
利用css3-animation实现逐帧动画效果
Mar 10 HTML / CSS
canvas绘制表情包的示例代码
Jul 09 HTML / CSS
分享一个页面平滑滚动小技巧(推荐)
Oct 23 HTML / CSS
HTML5移动端开发遇见的东西
Oct 11 HTML / CSS
Html5新增标签与样式及让元素水平垂直居中
Jul 11 HTML / CSS
HTML5网页录音和上传到服务器支持PC、Android,支持IOS微信功能
Apr 26 HTML / CSS
HTML5实践-图片设置成灰度图
Nov 12 HTML / CSS
html5中canvas学习笔记2-判断浏览器是否支持canvas
Jan 06 HTML / CSS
HTML5 input元素类型:email及url介绍
Aug 13 HTML / CSS
在HTML5中使用MathML数学公式的简单讲解
Feb 19 HTML / CSS
使用HTML5中的contentEditable来将多行文本自动增高
Mar 01 #HTML / CSS
解析HTML5中的新功能本地存储localStorage
Mar 01 #HTML / CSS
基于HTML5的齿轮动画特效
Feb 29 #HTML / CSS
HTML5中meta属性的使用方法
Feb 29 #HTML / CSS
HTML5+lufylegend实现游戏中的卷轴
Feb 29 #HTML / CSS
HTML5实现动画效果的方式汇总
Feb 29 #HTML / CSS
HTML5 Canvas实现图片缩放、翻转、颜色渐变的代码示例
Feb 28 #HTML / CSS
You might like
在PHP中使用模板的方法
2008/05/24 PHP
php中对xml读取的相关函数的介绍一
2008/06/05 PHP
PHP 读取Postgresql中的数组
2013/04/14 PHP
Redis使用Eval多个键值自增的操作实例
2016/11/04 PHP
语义化 H1 标签
2008/01/14 Javascript
jquery tools系列 expose 学习
2009/09/06 Javascript
javascript学习笔记(六)数据类型和JSON格式
2014/10/08 Javascript
JS遍历页面所有对象属性及实现方法
2016/08/01 Javascript
Ionic3 UI组件之Gallery Modal详解
2017/06/07 Javascript
Vue.js学习笔记之修饰符详解
2017/07/25 Javascript
nodejs 日志模块winston的使用方法
2018/05/02 NodeJs
微信小程序实现折叠与展开文章功能
2018/06/12 Javascript
vue 循环加载数据并获取第一条记录的方法
2018/09/26 Javascript
Element-UI中Upload上传文件前端缓存处理示例
2019/02/21 Javascript
Vue使用Proxy代理后仍无法生效的解决
2020/11/13 Javascript
js面向对象方式实现拖拽效果
2021/03/03 Javascript
[01:23:35]Ti4主赛事胜者组 DK vs EG 1
2014/07/19 DOTA
[02:49]DAC2018决赛日TOP5 LGD开启黑暗之门绝杀VP
2018/04/08 DOTA
Python Socket传输文件示例
2017/01/16 Python
python+django+sql学生信息管理后台开发
2018/01/11 Python
Python用5行代码写一个自定义简单二维码
2018/10/21 Python
python tkinter基本属性详解
2019/09/16 Python
pytorch torch.expand和torch.repeat的区别详解
2019/11/05 Python
Python实现非正太分布的异常值检测方式
2019/12/09 Python
tensorflow mnist 数据加载实现并画图效果
2020/02/05 Python
Python3爬虫发送请求的知识点实例
2020/07/30 Python
BOSE德国官网:尽探索之力,享音乐之极
2016/12/11 全球购物
美国高级工作服品牌:Carhartt
2018/01/25 全球购物
Subside Sports德国:足球球衣和球迷商品
2019/06/08 全球购物
Weblogc domain问题
2014/01/27 面试题
应届毕业生如何写求职信
2014/02/16 职场文书
人民调解员先进事迹材料
2014/05/08 职场文书
校长竞聘演讲稿
2014/05/16 职场文书
2014年乡镇工会工作总结
2014/12/02 职场文书
2015年加油站工作总结
2015/05/13 职场文书
详解Go语言Slice作为函数参数的使用
2021/07/02 Golang