如何使用css写出一个三角形

简介: 如何使用css写出一个三角形

第一次听见这个问题的时候觉得很简单,但是的确想了好久都没有想出方法,也是找了很多方法才知道原来如此简单,还是我思维不够活跃

代码如下:

CSS:

      /* 通过修改边框来修改三角形的形状 */
      #border {
        width: 0;
        height: 0;
        border-top: yellowgreen 100px solid;
        border-bottom: blue 100px solid;
        border-left: aqua 100px solid;
        border-right: yellow 100px solid;
      }
      #but button {
        border: none;
        background-color: aqua;
        width: 36.45px;
        height: 30px;
      }

HTML:

        <!-- 三角形 -->
    <div id="border"></div>
    <!-- 选择显示哪个方向的三角 -->
    <div id="but">
      <button id="shang">上</button>
      <button id="xia">下</button>
      <button id="zuo">左</button>
      <button id="you">右</button>
      <button id="quan">全</button>
    </div>

JS(可有可无,可以直接把其他的边框设置成隐藏):

            shang.addEventListener('click', () => {
        border.style.borderTop = "yellowgreen 100px solid"
        border.style.borderBottom = "#FFFFFF 100px solid"
        border.style.borderLeft = "#FFFFFF 100px solid"
        border.style.borderRight = "#FFFFFF 100px solid"
      })
      xia.addEventListener('click', () => {
        border.style.borderTop = "#FFFFFF 100px solid"
        border.style.borderBottom = "blue 100px solid"
        border.style.borderLeft = "#FFFFFF 100px solid"
        border.style.borderRight = "#FFFFFF 100px solid"
      })
      zuo.addEventListener('click', () => {
        border.style.borderTop = "#FFFFFF 100px solid"
        border.style.borderBottom = "#FFFFFF 100px solid"
        border.style.borderLeft = "aqua 100px solid"
        border.style.borderRight = "#FFFFFF 100px solid"
      })
      you.addEventListener('click', () => {
        border.style.borderTop = "#FFFFFF 100px solid"
        border.style.borderBottom = "#FFFFFF 100px solid"
        border.style.borderLeft = "#FFFFFF 100px solid"
        border.style.borderRight = "yellow 100px solid"
      })
      quan.addEventListener('click', () => {
        border.style.borderTop = "yellowgreen 100px solid"
        border.style.borderBottom = "blue 100px solid"
        border.style.borderLeft = "aqua 100px solid"
        border.style.borderRight = "yellow 100px solid"
      })

最终效果:

仔细琢磨了一下,的确是很神奇

相关文章
|
4月前
|
前端开发
CSS画三角形(三种方法)
CSS画三角形(三种方法)
|
4月前
|
前端开发
css实现伪类三角形气泡框 带边框
css实现伪类三角形气泡框 带边框
46 3
|
4月前
|
前端开发
玩转CSS盒子之 三角形盒子
玩转CSS盒子之 三角形盒子
52 0
|
10月前
|
前端开发
如何用CSS 画一个三角形?
如何用CSS 画一个三角形?
56 0
|
29天前
|
前端开发
如何使用css写三角形
如何使用css写三角形
28 1
|
2月前
|
前端开发
css 实用技巧 —— 使用border属性绘图(三角形、梯形、对话框尖角)
css 实用技巧 —— 使用border属性绘图(三角形、梯形、对话框尖角)
47 1
|
3月前
|
前端开发
技术经验分享:CSS画三角形(三种方法)
技术经验分享:CSS画三角形(三种方法)
20 0
|
4月前
|
前端开发 JavaScript
用CSS画图——从三角形到吃豆人
用CSS画图——从三角形到吃豆人
|
10月前
|
前端开发 容器
如何利用CSS实现三角形、扇形、聊天气泡框
如何利用CSS实现三角形、扇形、聊天气泡框
144 0
|
4月前
|
前端开发 JavaScript API
下一篇
DDNS