css如何画有边框的三角形

vue的logo就可以看作是一个有边框的三角形。
在这里插入图片描述
vue的logo实现css样式:

    <div>
        <div id="vue-logo">
            <div class="green">
                <div class="gray">
                    <div class="white"></div>
                </div>
            </div>
        </div>
    </div>
	<style>
	    #vue-logo{
	        width: 430px;
	        height: 430px;
	        margin: auto;
	        position:absolute;
	        left: 0;
	        right: 0;
	        top: 0;
	        bottom: 0;
	    }
	    .green{
	        width: 0;
	        height: 0;
	        border-top:350px solid #41b883;
	        border-right:200px solid transparent;
	        border-left:200px solid transparent;
	        position:absolute;
	    }
	    .gray{
	        width: 0;
	        height: 0;
	        border-top:223px solid #35495e;
	        border-right:130px solid transparent;
	        border-left:130px solid transparent;
	        position:absolute;
	        top: -350px;
	        left: -130px;
	    }
	    .white{
	        width: 0;
	        height: 0;
	        border-top:112px solid #fff;
	        border-right:65px solid transparent;
	        border-left:65px solid transparent;
	        position:absolute;
	        top: -223px;
	        left: -65px;
	    }
	</style>

三角形的实现原理:

先上一段代码:

    <div>
        <div id="sjx"></div>
    </div>
	<style>
	    #sjx{
	        width: 500px;
	        height: 500px;
	        border-top: 50px solid rgb(212, 55, 141);
	        border-bottom: 50px solid green;
	        border-left: 50px solid rgb(184, 50, 27);
	        border-right: 50px solid peru;
	    }
	</style>

效果:
在这里插入图片描述
一个盒模型中当内容区有宽高的时候,四条边框会显示成梯形状。

当内容区无宽高时候:
    <div>
        <div id="sjx"></div>
    </div>
	<style>
	    #sjx{
	        width: 0px;
	        height: 0px;
	        border-top: 200px solid rgb(212, 55, 141);
	        border-bottom: 200px solid green;
	        border-left: 200px solid rgb(184, 50, 27);
	        border-right: 200px solid peru;
	    }
	</style>

效果:
在这里插入图片描述
一个盒模型中当内容区无宽高的时候,四条边框会显示成三角形。

总结:

利用上述特性,生成想要的三角形,并把其他三条边颜色变成透明即可。
要生成有边框的三角形,可以采用两个三角形通过定位重叠到一起实现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值