我想使用6个菜单项进行全宽导航,但是每个项目的单词长度都不同,这6个项目必须基于单词的长度具有动态百分比宽度,并且它们等于100%。< / p>
希望下面的图片更容易理解:
仅CSS可能吗?我已经尝试了好几天,但没有找到任何解决方案。请帮忙。
答案 0 :(得分:2)
我会亲自用flex来做
.flex{
display:flex;
flex-wrap:wrap
}
.logo{
width:15%;
text-align:center;
color:#fff;
background:red;
}
.nav{
padding:0;
margin:0 0 0 5%;
width:80%;
}
.nav li{
list-style-type:none;
margin-left:auto;
}
.nav li:first-child{
margin-left:0;
}
<div class="flex menu-container">
<div class="logo">
Logo
</div>
<ul class="nav flex">
<li>About</li>
<li>Custom-made product & private label</li>
<li>Packaging</li>
<li>Facility</li>
<li>Contact</li>
<li>Social</li>
</ul>
</div>
答案 1 :(得分:1)
*,
*::before,
*::after {
padding: 0;
margin: 0;
box-sizing: border-box;
}
.menu {
display: table;
width: 100%;
}
ul {
list-style-type: none;
display: table-row;
}
li {
display: table-cell;
border: 1px solid grey;
}
<div class="menu">
<ul>
<li>About</li>
<li>Custom Made Product & Private Label</li>
<li>Packaging</li>
<li>Facility</li>
<li>Contact</li>
<li>Insta WA</li>
</ul>
</div>
答案 2 :(得分:-1)
是的,这仅适用于CSS。请检查我为演示目的创建的代码笔,您可以拥有更多的样式和其他内容
<div class="menu">
<ul>
<li>About</li>
<li>Custom Made Product & Private Label</li>
<li>Packaging</li>
<li>Facility</li>
<li>Contact</li>
<li>Insta WA</li>
</ul>
</div>
*,
*::before,
*::after {
padding: 0;
margin: 0;
box-sizing: border-box;
}
ul {
list-style-type: none;
display: grid;
grid-template-columns: repeat(6, 1fr);
}
.menu {
width: 100%;
}
也请查看CSS网格使用指南