如何在不使边界线变圆的情况下获得 CSS 个圆角?

How can I get CSS rounded corners without rounding the border line?

我正在使用 border-radius 来圆化 div 的角。 div 底部还有一条边框线。像这样:

<div style="border-radius: .5em; border-bottom: 1px solid black">Content</div>

但是,我不希望边界线有圆边。我希望边界线完全笔直。有办法实现吗?

<div style="border-radius: .5em; border-bottom: 1px solid black">Content</div>

这样使用

<div style="border-bottom: 1px solid black">
    <div style="border-radius: .5em;">Content</div>
</div>

只需要在里面插入一个div并设置内容的边框半径

.inner {
  background:red;
  border-radius:5px;
  width:100px;
  height:100px;
}

.wrapper {
  display:inline-block;
  border-bottom:1px solid #000;
}
<div class="wrapper">
  <div class="inner"></div>  
</div>

可以使用伪元素(::before)来模拟直边框

CSS

div{
    position: relative;
    border-radius: .5em;
    background: #ccc;
}

div:before{
    position: absolute;
    content: "";
    display:block;
    bottom:0;
    left:0;
    right:0;
    height: 1px;
    background: #000;

}

DEMO HERE

如果我理解正确的话,你正在寻找这个:

border-top-left-radius: 0.5em;

JsFiddle: https://jsfiddle.net/pywdpLL0/1/

您可以分别指定每个角的边框半径。 希望这有帮助。