带有圆角的倾斜div

问题描述 投票:0回答:3

如何使用 CSS 实现以下形状?

右侧应倾斜,顶角应圆滑:

Slanted div with top rounded corners

css css-shapes
3个回答
2
投票

您可以使用伪元素、边框半径和变换旋转来创建圆角边缘和斜右部分:

输出:FIDDLE

Slanted div with rounded borders

div{
  display:inline-block;
  padding:1em 5em 1em;
  position:relative;
  overflow:hidden;
  border-top-left-radius: 10px;
}
div:after{
  content:"";
  position:absolute;
  top:0; left:0;
  width:100%; height:100%;
  background-color:#E70101;
  z-index:-1;    
  border-top-right-radius: 15px;
    
  -ms-transform: skewX(10deg);
  -webkit-transform: skewX(10deg);
  transform: skewX(10deg);
  
 -ms-transform-origin:100% 100%;
  -webkit-transform-origin:100% 100%;
  transform-origin:100% 100%;
}
<div>Some text</div>


0
投票

另一种选择是使用 3d 透视变换:http://lea.verou.me/2013/10/slanted-tabs-with-css-3d-transforms/


0
投票

一行 css 代码,即“clip-path”属性,它甚至可以在 div 标签上工作 查看 https://bennettfeely.com/clippy/ 获取示例或简单的代码片段

© www.soinside.com 2019 - 2024. All rights reserved.