我们在平时的前端开发的时候,有时候是需要一些小图形来丰富一下页面效果,比如:下拉列表的倒三角图形。那么这样的一个三角形是如何制作出来的,本章给大家介绍如何利用css或html画出一个三角形?两种不同的制作三角形方法(代码实例)。让大家知道如何用纯css代码实现三角形的绘制,或者使用html5是如何画三角形的。有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
一、利用css的border属性,即可实现三角形的绘制
代码:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>border 属性--绘制三角形</title> <style> .demo{ height:0; width:0; overflow: hidden; font-size: 0; line-height: 0; border-color:#FF9600 transparent transparent transparent; border-style:solid dashed dashed dashed; border-width:20px; } </style> </head> <body> <div class="demo"></div> </body> </html>
效果图:
利用css的border属性实现三角形的原理:css盒模型
一个盒子模型包括: margin+border+padding+content,上下左右边框交界处出呈现平滑的斜线. 利用这个特点, 通过设置不同的上下左右边框宽度或者颜色可以得到小三角, 小梯形等.调整宽度大小可以调节三角形形状.
.demo { height:20px; width:20px; border-color:#FF9600 #3366ff #12ad2a #f0eb7a; border-style:solid; border-width:20px; }
效果图:
当把height和width都设置成0后,得到:
把其他颜色都去掉,只留下橙色后,就得到一个三角形:
二、利用html5的canvas画布,即可实现三角形的绘制
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>canvas-绘制三角形</title> </head> <body> <canvas id="canvas" width="500" height="500"> 浏览器不支持canvas </canvas> <script> window.onload=function () { var canvas=document.getElementById("canvas");//获取canvas对象 var ctx=canvas.getContext("2d"); //创建二维的绘图上下文对象 ctx.beginPath(); ctx.linewidth=20; ctx.lineJoin="round"; //两条线交汇时的边角类型(miter 尖角默认 bevel斜角 round 圆角 ) ctx.moveTo(10,10); ctx.lineTo(110,10); ctx.lineTo(60,50); ctx.closePath(); //closePath() 关闭路径 闭合 ctx.strokeStyle="blue";// strokeStyle 只能填充该路径的颜色 ctx.fillStyle="red";// fillStyle 填充字体颜色、填充路径区域、图形区域 ctx.fill();// fill() 填充字体 ctx.stroke(); } </script> </body> </html>
效果图:
利用html5的canvas画布,即可实现三角形绘制的重点:
三角形在画布中的三个坐标:moveTo(10,10)----左上角坐标,ctx.lineTo(110,10)-----右上角 坐标, ctx.lineTo(60,50)----下面坐标
Atas ialah kandungan terperinci 如何利用css或html5画出一个三角形?两种不同的制作三角形方法(代码实例). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!