小编典典

如何在div标签上添加带边框的三角形

css

我有一个div标签,

 __________
|          |    
|          |    
|          |    
|__________|

我想在上面添加一个小三角形。

 _______/\_
|          |    
|          |    
|          |    
|__________|

注意:我希望我的div标签带有某种颜色的边框,而div主体具有另一种颜色。说,我的div背景将为白色,边框应为蓝色。请看这个。


阅读 1202

收藏
2020-05-16

共1个答案

小编典典

使用位于带有指针和阴影的初始框,您可以对其进行重新样式设置以形成所需的形状:

.arrow_box {

  top: 40px;

  position: relative;

  background: #ffffff;

  border: 1px solid #719ECE;  /*set border colour here*/

  width: 200px;

  height: 200px;

  border-radius: 3px;

  -webkit-filter: drop-shadow(0 1px 10px rgba(113, 158, 206, 0.8)); /*set shadow colour  and size here*/

  -moz-box-shadow: 0 1px 10px rgba(113, 158, 206, 0.8);

  filter: drop-shadow(0 1px 10px rgba(113, 158, 206, 0.8));

}



.arrow_box:after,

.arrow_box:before {

  bottom: 100%;

  border: solid transparent;

  content: " ";

  height: 0;

  width: 0;

  position: absolute;

  pointer-events: none;

}



.arrow_box:after {

  border-color: rgba(255, 255, 255, 0);

  border-bottom-color: #ffffff;

  border-width: 19px;

  left: 50%;

  margin-left: -19px;

}



.arrow_box:before {

  border-color: rgba(113, 158, 206, 0);

  border-bottom-color: #719ECE;

  border-width: 20px;

  left: 50%;

  margin-left: -20px;

}


<div class="arrow_box">

</div>

如果您需要将箭头进一步向右移动,则只需使用leftfor .arrow_box:after.arrow_box:before

2020-05-16