美文网首页Web前端之路让前端飞我爱编程
【基础】在css中绘制三角形及相关应用

【基础】在css中绘制三角形及相关应用

作者: 毛三十 | 来源:发表于2018-04-15 00:45 被阅读30次

简言

本文简要阐述了用CSS边框的方法在页面上绘制三角形,包括几种典型的三角形绘制,还介绍了几个简单的应用场景。利用边框绘制三角形方法只是众多方案中的一种,大家根据项目实际,选用最适宜项目的方案。

CSS与三角形

1 基本原理

在CSS中,我们可以利用border-top、border-left、border-bottom、border-left四个属性来绘制三角形。实现的基本原理参见下面的演示代码及其运行结果。

核心代码:

.box {
    width: 50px;
    height: 50px;
    border-top: 50px solid red;
    border-left:50px solid blue;
    border-right: 50px solid green;
    border-bottom: 50px solid yellow;
}

运行结果:

边框基本原理

演示代码

从以上代码及运行结果不难想出绘制三角形的办法,我们只要将 .box 的长度和宽度都设成0,就可以得到四个等腰三角形。再将不想保留的三角形边框颜色设置成透明色(即:border-color : transparent)就可以隐藏掉不想保留的三角形。从而完成三角形的绘制。

2 绘制三角形

2.1 等边三角形

等边三角形(又称正三边形),为三边相等的三角形,其三个内角相等,均为60°,它是锐角三角形的一种。等边三角形也是最稳定的结构。

2.1.1 尖角向上:

.triangle-up {
    width: 0;
    height: 0;
    border-bottom: 100px solid red;
    border-left: 57.735px solid transparent;
    border-right: 57.735px solid transparent;
}
尖角向上等边三角形

演示代码

2.1.2 尖角向下:

.triangle-down {
    width: 0;
    height: 0;
    border-top: 100px solid red;
    border-left: 57.735px solid transparent;
    border-right: 57.735px solid transparent;
}
尖角向下等边三角形

演示代码

2.1.3 尖角向左:

.triangle-left {
    width: 0;
    height: 0;
    border-right: 100px solid red;
    border-top: 57.735px solid transparent;
    border-bottom: 57.735px solid transparent;
}
尖角向左等边三角形

演示代码

2.1.4 尖角向右:

.triangle-right {
    width: 0;
    height: 0;
    border-left: 100px solid red;
    border-top: 57.735px solid transparent;
    border-bottom: 57.735px solid transparent;
}
尖角向右等边三角形

演示代码

2.2 等腰直角三角形

等腰直角三角形是特殊的等腰三角形,它的两底角相等,都是45°;它的两腰长度相等。

2.2.1 左上直角:

.triangle-top-left{
    width: 0;
    height: 0;
    border-top: 100px solid red;
    border-right: 100px solid transparent;
}
左上直角等腰直角三角形

演示代码

2.2.2 右上直角:

.triangle-top-right {
    width: 0;
    height: 0;
    border-top: 100px solid red;
    border-left: 100px solid transparent;
}
右上直角等腰直角三角形

演示代码

2.2.3 左下直角:

.triangle-bottom-left{
    width: 0;
    height: 0;
    border-bottom: 100px solid red;
    border-right: 100px solid transparent;
}
左下直角等腰直角三角形

演示代码

2.2.4 右下直角:

.triangle-bottom-right {
    width: 0;
    height: 0;
    border-bottom: 100px solid red;
    border-left: 100px solid transparent;
}
右下直角等腰直角三角形

演示代码

3 相关应用

3.1 弹出框(popover)组件

弹出框(popover)或提示框(tooltip)一般都会用到三角形,三角形明确并加强了指向作用。类似于Bootstrap的Popover和Tooltip组件都用到了边框三角形的实现方式。

弹出框(popover)组件

演示代码

上述演示只是实现了顶部弹出框,其它方向弹出框参考上述实现方式即可。

3.2 视频播放按钮

视频播放按钮(Play button)可以采用边框三角形的实现方式。

视频播放按钮组件

演示代码

三角形的应用场景还有很多,比如下拉菜单(dropdown menu)中,或者是“顶”及“踩”按钮等。

边框实现三角形只是众多方案之一,大家可以根据项目实际,选择小图标方案或选用SVG方案。

相关文章

  • 【基础】在css中绘制三角形及相关应用

    简言 本文简要阐述了用CSS边框的方法在页面上绘制三角形,包括几种典型的三角形绘制,还介绍了几个简单的应用场景。利...

  • css绘图基本图形

    一、css绘制三角形(一)基础css.xiasanjiao{width:0;height:0;overflow:h...

  • css绘制三角形和对号

    CSS绘制三角形 div css 效果 CSS绘制对号 div css 效果

  • 绘制对话框

    Time: 20200131 三角形的绘制 HTML CSS样式 对话框的绘制 HTML CSS样式 显示效果 END.

  • CSS小技巧(一)

    一、使用 CSS 实现三角形的技巧 1、使用 border 绘制三角形:利用了高宽为零的容器及透明的 border...

  • OpenGL ES零基础入门----(4)矩形的绘制

    绘制矩形 在上一篇文章 OpenGL ES零基础入门----(2)绘制三角形 中,使用OpenGLES绘制了基本的...

  • WebGL-绘制三角形

    在WebGL中,绘制三角形是很常的,是绘制其它复杂图形的基础,因为其它图形都是由三角形组成的,像矩形,是由两个三角...

  • CSS学习笔记之定位

    CSS的盒子及相关 盒子基础 postion,float,display——版式 边框(border)。可以设置...

  • 纯css绘制三角形

    利用css的border属性可以方便的绘制出三角形;

  • CSS3 基础及动画相关实践

    一、分享目的 普及CSS基础知识 介绍CSS3基础及动画相关熟悉 通过分析iceland首页动画源码,介绍使用CS...

网友评论

    本文标题:【基础】在css中绘制三角形及相关应用

    本文链接:https://www.haomeiwen.com/subject/dtgrkftx.html