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