CSS绘制三角形和箭头,不用再用图片了

前言

还在用图片制作箭头,三角形,那就太lou了。css可以轻松搞定这一切,而且颜色大小想怎么变就怎么变,还不用担心失真等问题。

先来看看这段代码:

/**css*/
.d1{
width: 0;
height: 0;
border: 100px solid #339933;
}
/**html*/
<div class="d1"></div>
/**css*/
.d2{
width: 0;
height: 0;
border-width: 100px;
border-style: solid;
border-color:#FFCCCC #0099CC #996699 #339933;
}
/**html*/
<div class="d2"></div>
CSS绘制三角形和箭头,不用再用图片了

CSS绘制三角形和箭头,不用再用图片了

看了这两段代码,和效果图,是不是有一点眉目了?原来画三角形,只需要用元素的`border`来控制就可以了,`border-with`控制大小, `border-style`控制样式(实线、虚线等), `border-color`控制颜色,分上、右、下、左

三角形示例

向下三角形

/**css*/
.d3{
margin-left: 10px;
float: left;
width: 0;
height: 0;
border-width: 100px;
border-style: solid;
border-color:#FFCCCC transparent transparent transparent;
}
/**html*/
<div class="d3"></div>
CSS绘制三角形和箭头,不用再用图片了

CSS绘制三角形和箭头,不用再用图片了

向左三角形

/**css*/
.d4{
margin-left: 110px;
float: left;
width: 0;
height: 0;
border-width: 100px;
border-style: solid;
border-color: transparent #0099CC transparent transparent;
}
/**html*/
<div class="d4"></div>
CSS绘制三角形和箭头,不用再用图片了

CSS绘制三角形和箭头,不用再用图片了

这里的`transparent`是透明的意思

接下来两种就留给聪明的你了,相信你可以的,动手才知道原来这么简单!

其实我们还可以通过,一种样式,来实现不能角度的三角形,那就是利用CSS3里面的旋转`transform:rotate(90deg)`。

/**css*/
.d4{
margin-left: 110px;
float: left;
width: 0;
height: 0;
border-width: 100px;
border-style: solid;
border-color: transparent #0099CC transparent transparent;
transform: rotate(90deg); /*顺时针旋转90°*/
}
/**html*/
<div class="d4"></div>
CSS绘制三角形和箭头,不用再用图片了

CSS绘制三角形和箭头,不用再用图片了

箭头示例

向左箭头

/**css*/
.left{
position: absolute;
}
.left:before,.left:after{
position: absolute;
content: '';
border-top: 10px transparent dashed;
border-left: 10px transparent dashed;
border-bottom: 10px transparent dashed;
border-right: 10px #fff solid;
}
.left:before{
border-right: 10px #0099CC solid;
}
.left:after{
left: 1px; /*覆盖并错开1px*/
border-right: 10px #fff solid;
}
/**html*/
<i class="left" ></i>
CSS绘制三角形和箭头,不用再用图片了

CSS绘制三角形和箭头,不用再用图片了

是不是发现箭头和三角形是一样的呢?发现了,说明你已经懂了,箭头其实就是2个三角形,然后用白色三角形覆盖蓝色三角形,并且错开1px,刚刚好就形成了箭头。这就和《最强大脑》层叠消融项目是一样的。

向上箭头

/**css*/
.top{
position: absolute;
}
.top:before,.top:after{
position: absolute;
content: '';
border-top: 10px transparent dashed;
border-left: 10px transparent dashed;
border-right: 10px transparent dashed;
border-bottom: 10px #fff solid;
}
.top:before{
border-bottom: 10px #0099CC solid;
}
.top:after{
top: 1px; /*覆盖并错开1px*/
border-bottom: 10px #fff solid;
}
/**html*/
<i class="top" ></i>
CSS绘制三角形和箭头,不用再用图片了

 向左箭头(在向上箭头基础上做了90旋转)

.left{
    position: absolute;
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
   
}
.left:before,.left:after{
    position: absolute;
    content: '';
    border-top: 5.5px transparent dashed;
    border-left: 5.5px transparent dashed;
    border-right: 5.5px transparent dashed;
    border-bottom: 5.5px #fff solid;
}
.left:before{
    border-bottom: 5.5px #6E6E6E solid;

}
.left:after{
    top: 1px; /*覆盖并错开1px*/
    border-bottom: 5.5px #fff solid;
}

/**html*/

<i class="top" ></i>

  

 

转载于:https://www.cnblogs.com/zmdComeOn/p/11101385.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Keepalived是一种高可用解决方案,可用于将多台服务器组成一个虚拟IP地址,实现故障转移和负载均衡。当一台服务器出现故障时,Keepalived可以将虚拟IP地址迁移到其他健康服务器上,确保服务的持续可用性。 Jumpserver是一种堡垒机工具,用于管理和控制服务器的访问权限。它可以集中管理所有服务器的账户和密码,并提供基于角色的访问控制,以确保服务器的安全性。 MySQL主从复制是一种数据库同步机制,用于实现主数据库和从数据库之间的数据同步。主数据库负责写入数据,从数据库负责读取数据。当主数据库发生变更时,从数据库会自动同步数据,确保两个数据库的数据一致性。 Sersync是一种文件同步工具,可实现服务器之间的文件增量复制。当源服务器上的文件发生变更时,Sersync会自动检测并将变更的文件同步到目标服务器上,实现文件的实时备份和同步。 邮件通知是一种用于发送邮件通知的功能。可以通过配置邮件服务器的相关参数,将系统中的重要事件、错误信息等发送到指定的邮箱,以便及时的获得系统的运行状态和异常情况。 综上所述,通过将Keepalived、Jumpserver、MySQL主从复制、Sersync和邮件通知结合起来,可以实现在服务器集群中的故障转移和负载均衡、安全控制访问权限、数据库数据同步、文件备份和同步以及及时获取系统运行和异常情况的邮件通知。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值