如何将所有 li 元素移动到 <ul> 元素的左侧?

新手上路,请多包涵

我想将所有 li 元素移动到 ul 元素的左侧。看起来第一个 li 元素的左边距 > 0,我不明白。

你知道我该如何解决这个问题吗?

最终目标是:页脚中的第一个 li 元素#music 和#email 元素具有相同的左外边距 70px(与左边框的距离相同)。

 html,
body {
  margin: 0;
  text-align: center;
}

header {
  overflow: hidden
}

nav {
  overflow: hidden;
  display: inline-block;
  float: left;
  margin-left: 70px;
}

nav li {
  margin-right: 70px;
  float: left;
}

nav ul {
  list-style: none;
  overflow: hidden
}

#email {
  float: left;
  padding: 25px 0px;
  margin-left: 70px;
}

.wrapper {
  border: 2px solid green;
}

#menu2 {
  float: right;
  margin-right: 70px;
  border: 2px solid green;
}

ul {
  margin-top: 0px;
  margin-bottom: 0px;
}
 <div class="wrapper">
  <header>
    <nav id="menu">
      <ul>
        <li id="music">
          <a href="#"><img src="gfx/music40.gif"></a>
        </li>
        <li id="film">
          <a href="#"><img src="gfx/film40.gif"></a>
        </li>
        <li id="visual">
          <a href="#"><img src="gfx/visual40.gif"></a>
        </li>
        <li id="media">
          <a href="#"><img src="gfx/media40.gif"></a>
        </li>
      </ul>
    </nav>
    <div id="menu2">
      <a id="logo" href="index.html"><img src="gfx/tobera40.gif" alt="logo" class="logo"></a>
    </div>
  </header>

  <div id="main">
    <img src="gfx/banner40.jpg">
  </div>

  <footer>
    <div id="email">
      <img src="email.jpg">
    </div>
  </footer>
</div>

原文由 Hallonka 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 795
2 个回答

ul 上的填充将你的 li 项目推到右边。由于#email 和 nav 都缩进了 70px,唯一的区别是 ul 上的填充。尝试添加:

 ul {
    padding: 0;
}

原文由 Jensei 发布,翻译遵循 CC BY-SA 4.0 许可协议

您可以将 padding: 0 添加到 ul 元素以强制它粘在父元素的左边框 nav 元素。

原文由 Samuryte 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题