如何通过div标签添加边框的三角形

问题描述 投票:14回答:4

我有一个div标签,

 __________
|          |    
|          |    
|          |    
|__________|

我想通过它添加一个小三角形。

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

注:我想我有某种颜色的边框div标签,和另一个DIV体。说,我的div背景将是白色和边框应为蓝色。看到这个请。 http://fiddle.jshell.net/pausP/

css3 html css
4个回答
28
投票

使用带有指针和阴影初始框http://cssarrowplease.com/可以restyle他们做出你想要的形状:

.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>

如果你需要移动的箭头进一步正确,那么就与left.arrow_box:after.arrow_box:before


-1
投票

“皮特”的上述http://fiddle.jshell.net/pausP/3/答案显示以及如何做到这一点,也发挥一点与参数,看看是如何工作的。而对于那些谁不明白这一点以及它是如何工作的阅读这篇文章,展示了三角形是如何制造,从边框(我指的是原则)。 https://css-tricks.com/snippets/css/css-triangle

然后,它只是之前和之后的使用,以及我们可以仅使用一个为了依赖我们想要的东西,其实之前是用来做的蓝色三角形和后一个白色三角形它们层叠在另一个之上,以1px的差异有在三角形边界,但如果没有必要,所以你之前使用的例子。 (你可以改变之前的保证金一点点,看看它是如何)。一跳是有益的。


-2
投票

你可以创建一个图形编辑器的三角形图像,然后把该图像为DIV,然后浮空DIV到一个固定的绝对定位坐标DIV和设置顶部和左侧坐标。


-2
投票

首先你必须做出这样/ \用你想要一个边框颜色,然后保存该PNG图片您的首选位置,然后移动到CSS代码为形象定位,因此使用下面的代码的图像:

背景图像:网址(图像/ triangle_img.png);背景重复:不重复;背景位置:顶部;

并添加该代码与您指定的div风格。而我只给代码,以便将具有划分边界三角形边界

© www.soinside.com 2019 - 2024. All rights reserved.