边界半径使用CSS在三角形的左上角

Joh*_* St 7 html css css3 css-shapes

我有这个代码

div {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 85px 85px 0 0;
  border-color: #c00000 transparent transparent transparent;
  float: left;
  position: absolute;
  top: 8px;
}
Run Code Online (Sandbox Code Playgroud)
<div></div>
Run Code Online (Sandbox Code Playgroud)

如何在左上方的CSS三角形上应用边框半径?这似乎是不可能在这里.

Vit*_*des 14

  • First set equal border-width on all the sides
  • Then add border-color to top and left and set right and bottom transparent

div {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 55px;
  border-color: #c00000 transparent transparent #c00000;
  float: left;
  position: absolute;
  top: 8px;
  border-radius: 10px 0px 0px 0px;
}
Run Code Online (Sandbox Code Playgroud)
<div></div>
Run Code Online (Sandbox Code Playgroud)

with box-shadow you can use a pseudo element for giving a box-shadow

div {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 55px;
  border-color: #c00000 transparent transparent #c00000;
  float: left;
  position: absolute;
  top: 8px;
  border-radius: 10px 0px 0px 0px;
}
div:after {
  content: '';
  position: absolute;
  width: 1px;
  height: 155px;
  top: -55px;
  left: 54px;
  transform: rotate(45deg);
  transform-origin: left top;
  box-shadow: 2px 1px 6px 1px red;
}
Run Code Online (Sandbox Code Playgroud)
<div></div>
Run Code Online (Sandbox Code Playgroud)


Nae*_*ikh 8

将其包裹在父div中并给予父级 border

http://jsfiddle.net/o6y997ds/

<div class="parent"><div class="div"></div></div>
.parent{
        border-radius:10px 0px 0px 0px;  
        overflow:hidden; 
       }
Run Code Online (Sandbox Code Playgroud)

  • [或者使用:三角形的伪元素](http://jsfiddle.net/ftp5jwg4/2/). (6认同)