网站上经常会使用一些三角形,除了图片的方式,实际上利用border我们可以做出纯CSS的三角形。我们知道border是个边抖可以单独设置,当四个边相交的时候他们是什么时候改变的?

.t0{
margin:30px;
height:200px;
width:200px;
border-top:solid 100px red;
border-left:solid 100px green;
border-right:solid 100px orange;
border-bottom:solid 100px blue;
}

.t0{
margin:30px;
height:200px;
width:200px;
border-top:solid 100px red;
border-left:solid 100px green;
border-right:solid 100px orange;
border-bottom:solid 100px blue;
}

通过demo可以看到border的相交的地方在45deg平分,当元素的width、和height属性呗设置为0的时候

.t1{
margin:30px;
height:0px;
width:0px;
border-top:solid 100px red;
border-left:solid 100px green;
border-right:solid 100px orange;
border-bottom:solid 100px blue;
}

.t1{
margin:30px;
height:0px;
width:0px;
border-top:solid 100px red;
border-left:solid 100px green;
border-right:solid 100px orange;
border-bottom:solid 100px blue;
}

这样我们就可以看到三角形了,尝试一下去掉两个边框,值保留上边和左边

.t2{
margin:30px;
height:0px;
width:0px;
border-top:solid 100px red;
border-left:solid 100px green;
}

.t2{
margin:30px;
height:0px;
width:0px;
border-top:solid 100px red;
border-left:solid 100px green;
}

这时候做三角形好像简单了,只要我们保留两个相邻边,把另外的一个设置为透明就可以了

.t3{
margin:30px;
height:0px;
width:0px;
border-top:solid 100px red;
border-right:solid 100px rgba(0,0,0,0);
}

.t3{
margin:30px;
height:0px;
width:0px;
border-top:solid 100px red;
border-right:solid 100px rgba(0,0,0,0);
}

这样我们就有一个直角三角形了,稍微修改一下

.t4{
margin:30px;
height:0px;
width:0px;
border-top:solid 90px red;
border-left:solid 200px rgba(0,0,0,0);
}

.t4{
margin:30px;
height:0px;
width:0px;
border-top:solid 90px red;
border-left:solid 200px rgba(0,0,0,0);
}

这样做等腰直角三角形也简单了,保留相邻的三个边,两个设置为透明就行了

.t5{
margin:30px;
height:0px;
width:0px;
border-top:solid 200px red;
border-left:solid 200px rgba(0,0,0,0);
border-right:solid 200px rgba(0,0,0,0);
}

.t5{
margin:30px;
height:0px;
width:0px;
border-top:solid 200px red;
border-left:solid 200px rgba(0,0,0,0);
border-right:solid 200px rgba(0,0,0,0);
}

再稍微调整一下,还可以做出各种形状

.t6{
margin:30px;
height:0px;
width:0px;
border-left:solid 100px green;
border-top:solid 100px rgba(0,0,0,0);
border-bottom:solid 100px rgba(0,0,0,0);
}

.t6{
margin:30px;
height:0px;
width:0px;
border-left:solid 100px green;
border-top:solid 100px rgba(0,0,0,0);
border-bottom:solid 100px rgba(0,0,0,0);
}

.t7{
margin:30px;
height:0px;
width:0px;
border-left:solid 200px green;
border-top:solid 80px rgba(0,0,0,0);
border-bottom:solid 80px rgba(0,0,0,0);
}

.t7{
margin:30px;
height:0px;
width:0px;
border-left:solid 200px green;
border-top:solid 80px rgba(0,0,0,0);
border-bottom:solid 80px rgba(0,0,0,0);
}

.t8{
margin:30px;
height:0px;
width:0px;
border-left:solid 100px green;
border-top:solid 200px rgba(0,0,0,0);
border-bottom:solid 100px rgba(0,0,0,0);
}

.t8{
margin:30px;
height:0px;
width:0px;
border-left:solid 100px green;
border-top:solid 200px rgba(0,0,0,0);
border-bottom:solid 100px rgba(0,0,0,0);
}

使用border做三角形的更多相关文章

  1. 怎样用div做三角形

    20181204 用盒子模型做三角形的效果: <div></div> width:0px; height:0px; border:10px solid red; border- ...

  2. 如何利用border书写三角形,建议考虑正方形

    网页做三角形图片,你还在拿ps调整吗?out了,老铁,来和我一起脑海畅想一个正方形是由4个等腰直角三角形构成,然后我想保留上边的三角形,那下边.左边.右边的三角形就没了(设置背景色transparen ...

  3. 纯css做三角形图标

    以前做三角形图标一直是用图片,或者css3旋转,现在才发现原来还有这么简单的三角形 div { border: 10px solid transparent; border-bottom: 10px ...

  4. CSS用border绘制三角形

    使用border绘制三角形的思路,就是border尺寸设置一个较大的值,元素自身的宽高设置为0,全部由边线占据,这样每边就会显示为四分之一块的三角形.这样不借助图片,可以直接绘制出三角形了. 一个栗子 ...

  5. 用CSS的border画三角形

    用border画三角形,实际上属于一种奇淫巧技. 利用的是border的一个特性:当一个元素的宽高都为0时,给border设置宽度(至少给2个相邻的边框设置宽度),border就会撑开这个元素. 四个 ...

  6. css中border画三角形

    <!doctype html><html lang="en"> <head>  <meta charset="UTF-8&quo ...

  7. border做三角符号

    用border做三角符号以及其他图形 ;; border-width:20px 10px; border-style:solid; border-color:#ff3300 #ff3300 #ffff ...

  8. html border画三角形

    最近遇到了问题就是画推进条类似于

  9. 初学python-day6 for循环和流程控制(已更新循环做三角形图形!!)

    for循环 1.格式 for    变量    in   集合: 循环体 2.概述 当程序执行for循环,按顺序从集合中获取元素变量保存当前循环得到的值,再去执行循环体.当集合中数据都被取完,则此刻跳 ...

随机推荐

  1. python 学习第二十一天,django知识(三)

    一,django的url路由系统总结 1,url(/index/,函数或者类) 2,url(/index/(\d+), 函数或者类) 3,url(/index/(?P<nid>\d+),函 ...

  2. java中被各种XXUtil/XXUtils辅助类恶心到了,推荐这种命名方法

    且看一下有多少个StringUtils 列举一下XXUtil/XXUtils恶劣之处 1. 不知道该用XXUtil还是用XXUtils, 或者XXHelper, XXTool 2. 不知道该用a.ja ...

  3. 《DSP using MATLAB》示例Example5.19

    代码: n = 0:9; x = n+1; h = [1,0,-1]; N = 6; y = ovrlpsav(x,h,N); nh = 0:1:length(h)-1; ny = 0:1:lengt ...

  4. allow zero datetime=true导致datetime转换失败:MySql.Data.Types.MySqlDateTime”的对象无法转换为类型“System.Nullable`1[System.DateTime]

    allow zero datetime=true导致datetime转换失败:MySql.Data.Types.MySqlDateTime”的对象无法转换为类型“System.Nullable`1[S ...

  5. 基于dubbo构建分布式项目与服务模块

      关于分布式服务架构的背景和需求可查阅http://dubbo.io/.不同于传统的单工程项目,本文主要学习如何通过maven和dubbo将构建分布项目以及服务模块,下面直接开始. 创建项目以及模块 ...

  6. BZOJ的两道osu概率DP easy与osu

    坑 http://blog.csdn.net/CreationAugust/article/details/49516415 http://blog.csdn.net/braketbn/article ...

  7. $(function(){}) 与(function(){})()在执行时的优先级

    $(function(){}) 是在页面DOM元素加载完成后执行,这时页面中的DOM对象都可以找到; (function(){})()是匿名函数,按页面从上到下顺序,执行到它时才执行,这时可能有的在此 ...

  8. d8fs9f

    你好 - Helloworld 1. a 2. b 3. c 来自为知笔记(Wiz)

  9. uva12063数位dp

    辣鸡军训毁我青春!!! 因为在军训,导致很长时间都只能看书yy题目,而不能溜到机房鏼题 于是在猫大的帮助下我发现这道习题是数位dp 然后想起之前讲dp的时候一直在补作业所以没怎么写,然后就试了试 果然 ...

  10. 利用浏览器LocalStorage缓存图片,视频文件

    文章路径:https://hacks.mozilla.org/2012/02/saving-images-and-files-in-localstorage/