首頁 > web前端 > css教學 > 主體

如何利用css或html5畫出一個三角形?兩種不同的製作三角形方法(程式碼實例)

青灯夜游
發布: 2018-09-12 16:08:04
原創
10670 人瀏覽過

我們在平時的前端開發的時候,有時候是需要一些小圖形來豐富一下頁面效果,例如:下拉列表的倒三角圖形。那麼這樣的一個三角形是如何製作出來的,本章要跟大家介紹如何利用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畫出一個三角形?兩種不同的製作三角形方法(程式碼實例)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!