如何创建一个完全覆盖CSS中相邻角落的边框?

Alb*_*tar 24 css border

我有一个1px边框的div,我正在尝试用另一种颜色为该div创建一个3px边框.我正在使用此代码:

box {
  border: 1px solid #ddd;
  border-top: 3px solid #3F9BD0;
}
Run Code Online (Sandbox Code Playgroud)

但在角落边界不好,见图:
坏边界

如何使这个边框看起来很好,像这样:
所需的直角边角

小提琴:https://jsfiddle.net/15tory3z/

Aks*_*hay 16

而不是border-top尝试使用:after伪元素来重新创建所需的效果.

.box {
  width: 200px;
  height: 100px;
  border: 1px solid #ddd;
  position: relative;
}
.box:after {
  position: absolute;
  content: "";
  width: 100%;
  height: 5px;
  top: -5px;
  background: dodgerblue;
  padding: 1px;
  left: -1px;
}
Run Code Online (Sandbox Code Playgroud)
<div class="box"></div>
Run Code Online (Sandbox Code Playgroud)

选择2:

使用linear-gradient().

.box {
  width: 200px;
  height: 100px;
  border: 1px solid #ddd;
  background: -webkit-linear-gradient(top, dodgerblue 5%, #fff 5%);
  background: -moz-linear-gradient(top, dodgerblue 5%, #fff 5%);
  background: -o-linear-gradient(top, dodgerblue 5%, #fff 5%);
  background: -ms-linear-gradient(top, dodgerblue 5%, #fff 5%);
  background: linear-gradient(top, dodgerblue 5%, #fff 5%);
}
Run Code Online (Sandbox Code Playgroud)
<div class="box"></div>
Run Code Online (Sandbox Code Playgroud)


G-C*_*Cyr 15

您可以使用插入阴影和填充绘制这些:

div {
  padding:12px 5px 5px;
  width: 40%;
  height: 200px;
  box-shadow: inset 0 10px #3F9BD0, inset 4px 0 gray, inset -4px 0 gray, inset 0 -4px  gray
}
Run Code Online (Sandbox Code Playgroud)
<div></div>
Run Code Online (Sandbox Code Playgroud)

或者只是一个开头的顶影

div {
 
  width: 40%;
  height: 200px;
  border:2px solid gray;
  border-top:none;
  box-shadow:  0 -10px #3F9BD0;
  margin-top:12px;
}
Run Code Online (Sandbox Code Playgroud)
<div></div>
Run Code Online (Sandbox Code Playgroud)

否则,background可以使用渐变,甚至动画2个例子:http://codepen.io/gc-nomade/pen/IGliChttp://codepen.io/gc-nomade/pen/pKwby


Mad*_*ina 7

这也是一条线:

.box1 {
  border: 10px solid #ddd;
  border-top: 0;
  box-shadow: 0 -30px 0 #3F9BD0;
  float: left;
  width: 300px;
  height: 300px;
}
Run Code Online (Sandbox Code Playgroud)
<div class="box1"></div>
Run Code Online (Sandbox Code Playgroud)