如何在椭圆的左侧应用CSS边框颜色?

问题描述 投票:2回答:1

我试图仅在椭圆的左侧应用白色边框,并将其他边保持为透明。但是,边框未应用于左侧的整个部分。需要进行哪些更改才能显示预期的输出?

#ellipsis {
  background-color: #3ebede;
  height: 25px;
  color: #000;
  position: relative;
  padding: 4px 15px 4px 30px;
  width: 200px;
  border-radius: 20px;
  margin: -4px -25px -4px -4px;
  text-align: left;
  display: inline-block;
  border: solid;
  border-color: transparent transparent transparent white
}
<body>
  <button id="ellipsis"></button>
  <button id="ellipsis"></button>
  <button id="ellipsis"></button>

</body>

链接到我的代码:https://jsbin.com/bebekirano/edit?html,output

Expected output

css border
1个回答
7
投票

考虑box-shadow

.ellipsis {
  background-color: #3ebede;
  height: 25px;
  color: #000;
  position: relative;
  padding: 4px 15px 4px 30px;
  width: 200px;
  border-radius: 20px;
  margin: -4px -25px -4px -4px;
  text-align: left;
  display: inline-block;
  box-shadow:-2px 0 0 2px #fff;
  border:none;
}
<body>
  <button class="ellipsis"></button>
  <button class="ellipsis"></button>
  <button class="ellipsis"></button>

</body>

如果你想要透明度,这里有一个radial-gradient的技巧:

.ellipsis {
  background-color: #3ebede;
  height: 25px;
  color: #000;
  position: relative;
  padding: 4px 15px 4px 30px;
  width: 200px;
  border-radius: 20px;
  margin: -4px -25px -4px -4px;
  text-align: left;
  display: inline-block;
  border:none;
}
.ellipsis:not(:last-child) {
  background:radial-gradient(4px 3px at right,transparent 30px,#3ebede 31px); 
}

body {
  background:#ddd;
}
<div>
  <button class="ellipsis"></button>
  <button class="ellipsis"></button>
  <button class="ellipsis"></button>

</div>
© www.soinside.com 2019 - 2024. All rights reserved.