我可以只用一个伪元素而不是两个来实现这种边框箭头样式吗?

Can I achieve this border arrow style with just one pseudo-element instead of two?

GitHub 使用两个伪元素来显示三角形周围的绿色边框。

像这样:

我可以只使用一个 ::after 选择器得到相同的结果吗?

你可以试试这个

div {
  width:300px;
  height:100px;
  background:#fff;
  border:1px solid green;
  position:relative;
  padding:20px;
 }
 
 div:after {
  content:"";
  position:absolute;
  right:-11px;
  top:30px;
  width:20px;
  height:20px;
  background:#fff;
  border:1px solid green;
  border-left:none;
  border-bottom:none;
  transform:rotate(45deg);
  -webkit-transform:rotate(45deg);
  user-select:none;
  -webkit-user-select: none;
}
<div>
  Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
  tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim 
  veniam,quis nostrud exercitation 
</div>

您可以为此使用 :after & :before 选择器

div {
  width: 300px;
  height: 200px;
  background: #fff;
  border: 1px solid #1db73f;
  position: relative;
  padding: 20px;
  border-radius:5px;
}
div:before {
  content: "";
  position: absolute;
  right: -20px;
  top: 30px;
  width: 0; 
  height: 0; 
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;
  border-left: 20px solid #fff;
  z-index:1;
}
div:after {
  content: "";
  position: absolute;
  right: -21px;
  top: 30px;
  width: 0; 
  height: 0; 
  border-top: 20px solid transparent;
  border-bottom: 20px solid transparent;      
  border-left: 20px solid #1db73f;
}
<div>
  Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
  tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
  quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
  consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse
  cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
  proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
</div>