菜单的倒角中间

时间:2019-11-19 13:42:06

标签: html css

我尝试对菜单的中间部分进行倒角,但是我找不到在CSS中的操作方法。

这就是我想要的:

enter image description here

找不到找到它的好方法。 尝试使用一些伪元素以及左下和右下半径。

我可以在徽标中加上一些最基本的内容,但是我很确定可以用CSS的方式来做,但我找不到方法。

这是我的结构:

$ pip install pyparsing
* {
  box-sizing: border-box;
}

ul,
li {
  list-style: none;
  line-height: 1;
  display: inline-block;
}

.header {
  line-height: 1;
  padding-top: 15px;
  background-color: #FFF;
}

.header>div {
  display: grid;
  grid-column-gap: 90px;
  align-items: center;
  grid-template-columns: 1fr auto 1fr;
  grid-template-areas: "left center right";
}

.header ul.menu>li:not(:first-child) {
  margin-left: 35px;
}

.header li {
  display: inline-block;
}

.header__left {
  grid-area: left;
  justify-self: right;
}

.header__center {
  grid-area: center;
}

.header__right {
  grid-area: right;
}

1 个答案:

答案 0 :(得分:1)

我不确定您使用伪元素的尝试出了什么问题,但这似乎可行。您可能需要摆弄边距,填充和位置。

:)
* {
    box-sizing: border-box;
}

body {
    min-height: 100vh;
    margin: 0;
    padding: 0;
    background-image: url(https://picsum.photos/1600);
    background-size: cover;
    background-color: pink;
}

ul,
li {
    list-style: none;
    line-height: 1;
    display: inline-block;
}

.header {
    line-height: 1;
    padding: 0 0 5px;
    margin-top: 15px;
    position: relative;
    overflow: hidden;
}

.header .container {
    background-color: #fff;
    position: relative;
    padding-top: 10px;
    margin-bottom: 20px;
}

.header::before {
    content: '';
    position: absolute;
    width: 120px;
    height: 120px;
    border-radius: 60px;
    left: 50%;
    transform: translateX(-50%);
    top: -35px;
    background: #fff;
    overflow: hidden;
}

.header>div {
    display: grid;
    grid-column-gap: 90px;
    align-items: center;
    grid-template-columns: 1fr auto 1fr;
    grid-template-areas: "left center right";
}

.header ul.menu>li:not(:first-child) {
    margin-left: 35px;
}

.header li {
    display: inline-block;
}

.header__left {
    grid-area: left;
    justify-self: right;
}

.header__center {
    grid-area: center;
}

.header__right {
    grid-area: right;
}

Fiddle demo