首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >锋利的一侧角

锋利的一侧角
EN

Stack Overflow用户
提问于 2016-01-11 08:48:16
回答 2查看 2.3K关注 0票数 2

为了使菜单的边角锋利,我使用了边框-radius

代码语言:javascript
运行
复制
.right-section-top-bar.row {
    background-color: #44d2ff;
    border-radius: 0 0 0 100px;
}

但它不能给尖锐的角落。但我不想要那个激进的部分。我也试着做一个三角形,然后用那个条来定位它,但是我认为这不是最好的解决方案,可能是前后的一些事情。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-11 08:59:39

您可以使用这样的css :before 伪元素来实现这一点:

代码语言:javascript
运行
复制
div:before {
  content: "";
  width: 0px;
  height: 0px;
  border-style: solid;
  border-width: 0px 40px 40px 0px;
  border-color: transparent #44d2ff transparent transparent;
  position: absolute;
  top: 0px;
  margin-left: -40px;
}

div {
  position: relative;
  left: 100px;
  width: 200px;
  height: 40px;
  background: #44d2ff;
}
代码语言:javascript
运行
复制
<div></div>

票数 6
EN

Stack Overflow用户

发布于 2016-01-11 09:46:03

响应伪元

为了避免在需要响应元素时破坏设计,可以使用calc()设置CSS的宽度。请检查我能用一下吗以获得浏览器支持,并以作为工作示例。当您更改.block的宽度时,您会看到伪元素也在调整大小。

代码语言:javascript
运行
复制
   .block {
      position:relative;
      height:300px;
      width: 300px;
      background: purple;
    }

    .block:before {
      content: "";
      border-top: 40px solid purple;
      border-left: 40px solid transparent;
      position: absolute;
      bottom: -40px;
    }

    .block:after {
        content: "";
        width: -webkit-calc(100% - 40px);
        width: -moz-calc(100% - 40px);
        width: calc(100% - 40px);
        height: 40px;
        background: purple;
        position: absolute;
        bottom: -40px;
        margin-left: 40px;
    }

在再次阅读您的问题之后,我发现这不是您正在寻找的解决方案,因为您的示例包含文本,但也许这对其他未来的项目是有帮助的。

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

https://stackoverflow.com/questions/34717289

复制
相关文章

相似问题

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