欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

如何利用css或html5画出一个三角形?两种不同的制作三角形方法(代码实例)

程序员文章站 2022-03-16 19:05:03
...
我们在平时的前端开发的时候,有时候是需要一些小图形来丰富一下页面效果,比如:下拉列表的倒三角图形。那么这样的一个三角形是如何制作出来的,本章给大家介绍如何利用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或html5画出一个三角形?两种不同的制作三角形方法(代码实例)

利用css的border属性实现三角形的原理:css盒模型

一个盒子模型包括: margin+border+padding+content,上下左右边框交界处出呈现平滑的斜线. 利用这个特点, 通过设置不同的上下左右边框宽度或者颜色可以得到小三角, 小梯形等.调整宽度大小可以调节三角形形状.

.demo {
    height:20px;
    width:20px;
    border-color:#FF9600 #3366ff #12ad2a #f0eb7a;
    border-style:solid;
    border-width:20px;
}

效果图:

如何利用css或html5画出一个三角形?两种不同的制作三角形方法(代码实例)

当把height和width都设置成0后,得到:

如何利用css或html5画出一个三角形?两种不同的制作三角形方法(代码实例)

把其他颜色都去掉,只留下橙色后,就得到一个三角形:

如何利用css或html5画出一个三角形?两种不同的制作三角形方法(代码实例)

二、利用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>

效果图:

如何利用css或html5画出一个三角形?两种不同的制作三角形方法(代码实例)

利用html5的canvas画布,即可实现三角形绘制的重点:

三角形在画布中的三个坐标:moveTo(10,10)----左上角坐标,ctx.lineTo(110,10)-----右上角 坐标, ctx.lineTo(60,50)----下面坐标

以上就是如何利用css或html5画出一个三角形?两种不同的制作三角形方法(代码实例)的详细内容,更多请关注其它相关文章!