HTML:如何在第二列中实际写入文本?

标签 html css

我正在尝试为我的餐厅设置网站菜单目录,但我对如何在第二列中写入文本感到困惑。见下图。这是一个有两列的下拉菜单。 enter image description here

此外,当我使用三列时,它看起来像这样。 enter image description here

如何修复它,使文本位于第一列,并且它们具有与第一张图片相同的格式?这是我的代码,

body {
  background: #db2811;
  margin: 0 auto;
  padding: 2em 2em 4em;
  max-width: 65%;
  box-shadow: 0 0 2px rgba(0, 0)
}
h1 {
  text-align: center;
  color: #fff200;
  font-size: 50px;
}
.bold {
  font-weight: 600;
}
.nav ul {
  *zoom: 1;
  list-style: none;
  margin-top: 20%;
  margin-left: -3%;
  padding: 0;
}
.nav ul:before,
.nav ul:after {
  content: "";
  display: table;
}
.nav ul:after {
  clear: both;
}
.nav ul > li {
  float: left;
  position: relative;
}
.nav a {
  display: block;
  padding: 10px 20px;
  line-height: 1em;
  color: #fff;
  border-left: 1px solid #595959;
  font-size: 16px
}
.nav a:hover {
  text-decoration: none;
  background: #595959;
}
.nav li ul {
  background: #273754;
}
.nav li ul li {
  -webkit-column-count: 3;
  /* Chrome, Safari, Opera */
  -moz-column-count: 3;
  /* Firefox */
  column-count: 3;
  -webkit-column-rule: 1px solid lightblue;
  /* Chrome, Safari, Opera */
  -moz-column-rule: 1px solid lightblue;
  /* Firefox */
  column-rule: 1px solid lightblue;
  width: 500px;
}
.nav li ul a {
  border: none;
}
.nav li ul a:hover {
  background: rgba(0, 0, 0, 0.2);
}
.nav li ul {
  position: absolute;
  left: 0;
  top: 36px;
  z-index: 1;
  max-height: 0;
  overflow: hidden;
  -webkit-transform: perspective(400) rotate3d(1, 0, 0, -90deg);
  -webkit-transform-origin: 50% 0;
  -webkit-transition: 350ms;
  -moz-transition: 350ms;
  -o-transition: 350ms;
  transition: 350ms;
}
.nav ul > li:hover ul {
  max-height: 1000px;
  -webkit-transform: perspective(400) rotate3d(0, 0, 0, 0);
}
<h1>Menu</h1>
<nav class="nav">
  <ul>
    <li>
      <a href="#">Drinks</a>
      <ul>
        <li><a>Pepsi</a></li>
        <li><a>Diet Pepsi</a></li>
        <li><a>Mountain Dew</a></li>
        <li><a>Lemonade</a></li>
        <li><a>Sierra Mist</a></li>
        <li><a>Dr. Pepper</a></li>
        <li>
          <a></a>
        </li>
      </ul>

    </li>
  </ul>
</nav>

最佳答案

尝试使用inline-block 为您显示li 元素并将它们的宽度设为50%。然后 ul width 到 100%

关于HTML:如何在第二列中实际写入文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40200610/

相关文章:

javascript - 如何解决 parent 影响 child 的事件

css - 如何拥有一个像 iframe 一样的 div?

html - 如何根据点击以 Angular 使用css3进行动画处理?

html - 自动内联 block 到 block 菜单栏

javascript - Flexbox 中的可拖动拆分 Pane 窗口无法通过子元素

javascript - 修复 Firefox 文件选择窗口在所有其他窗口后面打开的问题

javascript - HTML5SQL 使用 SELECT 语句从 Web 数据库检索记录

javascript - 除 Angular 4 的输入外,所有页面上都有阴影

javascript - css不影响div

javascript - 如何让内联元素在空时占用空间?