首页 >web前端 >css教程 > 正文

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

原创2018-09-12 16:08:0407533
我们在平时的前端开发的时候,有时候是需要一些小图形来丰富一下页面效果,比如:下拉列表的倒三角图形。那么这样的一个三角形是如何制作出来的,本章给大家介绍如何利用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>

效果图:

1.jpg

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

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

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

效果图:

2.jpg

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

3.jpg

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

1.jpg

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

效果图:

4.jpg

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

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

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

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

相关文章

相关视频


网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论
  • 专题推荐

    作者信息

    青灯夜游

    今天学习一小步,明天提升一大步

    最近文章
    vuejs怎么实现路由跳转传值1013
    vue父组件怎么调用子组件的方法963
    vue兼容ie几362
    推荐视频教程
  • CSS3从入门到精通教程CSS3从入门到精通教程
  • CSS3  最新版参考手册CSS3 最新版参考手册
  • CSS3 最新视频教程CSS3 最新视频教程
  • Canvas 绘制时钟Canvas 绘制时钟
  • 视频教程分类