全宽导航,每个项目的动态宽度等于100%

时间:2019-06-25 10:17:05

标签: html css navigationbar

我想使用6个菜单项进行全宽导航,但是每​​个项目的单词长度都不同,这6个项目必须基于单词的长度具有动态百分比宽度,并且它们等于100%。< / p>

希望下面的图片更容易理解:

enter image description here

仅CSS可能吗?我已经尝试了好几天,但没有找到任何解决方案。请帮忙。

3 个答案:

答案 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 &amp; private label</li>
    <li>Packaging</li>
    <li>Facility</li>
    <li>Contact</li>
    <li>Social</li>
  </ul>
</div>

答案 1 :(得分:1)

CSS表

*,
*::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。请检查我为演示目的创建的代码笔,您可以拥有更多的样式和其他内容

update()

    <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网格使用指南

enter image description here