gpt4 book ai didi

html - 菜单中间倒 Angular

转载 作者:行者123 更新时间:2023-11-28 13:54:30 26 4
gpt4 key购买 nike

我尝试对菜单的中间进行倒 Angular 处理,但我找不到如何在 CSS 中执行此操作。

这是我想要的:

enter image description here

没有找到好的方法。尝试使用一些伪元素和左下角和右下角半径。

我想我可以用底部的东西来制作 Logo ,但我很确定可以用 CSS 方式来做,但我找不到方法。

这是我的结构:

* {
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;
}
<header class="header">
<div class="container">
<div class="header__left">
<ul class="menu">
<li>Menu 1</li>
<li>Menu 2</li>
</ul>
</div>
<div class="header__center">
Logo
</div>
<div class="header__right">
<ul class="menu">
<li>Menu 1</li>
<li>Menu 2</li>
</ul>
</div>
</div>
</header>

最佳答案

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

* {
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;
}
<header class="header">
<div class="container">
<div class="header__left">
<ul class="menu">
<li>Menu 1</li>
<li>Menu 2</li>
</ul>
</div>
<div class="header__center">
<img src="https://via.placeholder.com/50" />
</div>
<div class="header__right">
<ul class="menu">
<li>Menu 1</li>
<li>Menu 2</li>
</ul>
</div>
</div>
</header>

Fiddle demo

关于html - 菜单中间倒 Angular ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58935454/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com