首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >轮廓半径?

轮廓半径?
EN

Stack Overflow用户
提问于 2011-03-23 00:01:36
回答 17查看 479.1K关注 0票数 651

有没有办法在类似于border-radiusdiv元素的轮廓上获得圆角

EN

回答 17

Stack Overflow用户

发布于 2011-07-25 09:17:24

现在是老问题了,但这可能与有类似问题的人相关。我有一个四舍五入的border输入域,想要改变焦点轮廓的颜色。我不能驯服输入控件可怕的正方形轮廓。

因此,我使用了box-shadow。实际上我更喜欢阴影的平滑外观,但阴影可以硬化以模拟圆形轮廓:

代码语言:javascript
复制
input, input:focus {
    border: none;
    border-radius: 2pt;
    box-shadow: 0 0 0 1pt grey;
    outline: none;
    transition: .1s;
}
/* Smooth outline with box-shadow: */
.text1:focus {
    box-shadow: 0 0 3pt 2pt cornflowerblue;
}

/* Hard "outline" with box-shadow: */
.text2:focus {
    box-shadow: 0 0 0 2pt red;
}
代码语言:javascript
复制
<input class="text1"> 
<br>
<br>
<input type=text class="text2">

票数 726
EN

Stack Overflow用户

发布于 2012-07-11 14:40:26

我通常使用:after伪元素完成此操作:

当然,这取决于使用情况,此方法允许控制单个边框,而不是使用硬阴影方法。

您还可以设置-1px偏移,并再次使用背景线性渐变(无边界)来获得不同的效果。

代码语言:javascript
复制
body {
  margin: 20px;
}

a {
  background: #999;
  padding: 10px 20px;
  border-radius: 5px;
  text-decoration: none;
  color: #fff;
  position: relative;
  border: 2px solid #000;
}

a:after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  border-radius: 5px;
  border: 2px solid #ccc;
}
代码语言:javascript
复制
<a href="#">Button</a>

票数 108
EN

Stack Overflow用户

发布于 2011-12-11 19:56:55

与上面的Lea Hayes类似,但我是这样做的:

代码语言:javascript
复制
div {
  background: #999;
  height: 100px;
  width: 200px;
  border: #999 solid 1px;
  border-radius: 10px;
  margin: 15px;
  box-shadow: 0px 0px 0px 1px #fff inset;
}
代码语言:javascript
复制
<div></div>

不需要嵌套DIVs或jQuery,尽管为了简洁,我省略了一些CSS的-moz和-webkit变体。你可以看到上面的结果

票数 46
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5394116

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档