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属性使网站设计增强同时不消弱可用性
Aug 29 HTML / CSS
初探CSS3中的calc()功能
Jul 14 HTML / CSS
利用CSS3的transition属性实现滑动效果
Aug 05 HTML / CSS
如何使用localstorage代替cookie实现跨域共享数据问题
Apr 18 HTML / CSS
HTML5使用ApplicationCache接口实现离线缓存技术解决离线难题
Dec 13 HTML / CSS
html5 迷宫游戏(碰撞检测)实例一
Jul 25 HTML / CSS
HTML5 canvas绘制的玫瑰花效果
May 29 HTML / CSS
用HTML5制作烟火效果的教程
May 12 HTML / CSS
HTML5 canvas基本绘图之图形变换
Jun 27 HTML / CSS
5分钟实现Canvas鼠标跟随动画背景
Nov 18 HTML / CSS
HTML静态页面获取url参数和UserAgent的实现
Aug 05 HTML / CSS
html,css,javascript是怎样变成页面的
May 07 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
无法载入 mcrypt 扩展,请检查 PHP 配置终极解决方案
2011/07/18 PHP
PHP 5.5 创建和验证哈希最简单的方法详解
2013/11/07 PHP
PHP中Laravel 关联查询返回错误id的解决方法
2017/04/01 PHP
Laravel框架实现的rbac权限管理操作示例
2019/01/16 PHP
php intval函数用法总结
2019/04/14 PHP
js 兼容多浏览器的回车和鼠标焦点事件代码(IE6/7/8,firefox,chrome)
2010/04/14 Javascript
javascript时间自动刷新实现原理与步骤
2013/01/06 Javascript
node.js实现多图片上传实例
2014/06/03 Javascript
浅谈Unicode与JavaScript的发展史
2015/01/19 Javascript
JavaScript位移运算符(无符号) &gt;&gt;&gt; 三个大于号 的使用方法详解
2016/03/31 Javascript
JS实现把鼠标放到链接上出现滚动文字的方法
2016/04/06 Javascript
AngularJs基本特性解析(一)
2016/07/21 Javascript
ES6入门教程之Iterator与for...of循环详解
2017/05/17 Javascript
jQuery EasyUI 选项卡面板tabs的使用实例讲解
2017/12/25 jQuery
详解在React.js中使用PureComponent的重要性和使用方式
2018/07/10 Javascript
原生JS实现留言板
2020/03/26 Javascript
有趣的JavaScript隐式类型转换操作实例分析
2020/05/02 Javascript
Vue 解决通过this.$refs来获取DOM或者组件报错问题
2020/07/28 Javascript
[00:53]2015国际邀请赛 中国区预选赛一触即发
2015/05/14 DOTA
将Django框架和遗留的Web应用集成的方法
2015/07/24 Python
Python制作exe文件简单流程
2019/01/24 Python
实例讲解Python中整数的最大值输出
2019/03/17 Python
Python图像处理PIL各模块详细介绍(推荐)
2019/07/17 Python
pytorch实现seq2seq时对loss进行mask的方式
2020/02/18 Python
Python利用 utf-8-sig 编码格式解决写入 csv 文件乱码问题
2020/02/21 Python
Python关于拓扑排序知识点讲解
2021/01/04 Python
浅谈CSS3动画的回调处理
2016/07/21 HTML / CSS
HTML5 video循环播放多个视频的方法步骤
2020/08/06 HTML / CSS
英国鞋类及配饰零售商:Kurt Geiger
2017/02/04 全球购物
Unix/Linux开发面试题
2016/08/16 面试题
程序员求职信
2014/04/16 职场文书
房产公证委托书范本
2014/09/20 职场文书
2014年接待工作总结
2014/11/26 职场文书
2015小学语文教师个人工作总结
2015/05/20 职场文书
城南旧事观后感
2015/06/11 职场文书
利用Python实现模拟登录知乎
2022/05/25 Python