我的导航下面有一个小空间

Err*_*cio 0 html css

为什么我的导航区域下面有一个小空间.我已将导航的边距设置为0以及其下方的所有内容.仍然空间不会消失.这是我的标记.

<!DOCTYPE html>
<html>
  <head>
    <title>HTML5</title>
      <style>
        body{
          width: 964px;
          background-color: white;
          margin: 0 auto;
          border: 1px solid black;
          font-family: sans-serif;
        }

        nav{
          width: 964px;
          background-color: blue;
          margin: 0;
        }

        nav ul {
          list-style-type: none;
          padding: 0;
          margin: 0;
        }

        nav ul li {
          display: inline-block;
          float: left;  
        }
        nav ul li a{
          display: inline-block;
          padding: 10px;
          text-decoration: none;
          color: #fff;
          background-color: blue;
        }

        nav ul li a:hover{
          background-color: #00a;
        }

        header{
          text-align: center;
          background-color: orange;
        }

        header h1{
          margin: 0;
          padding: 20px;
        }

        aside{
          float: left;
          width: 180px;
          height: 500px;
          background-color: red;
        }

        aside ul{
          list-style-type: none;
          padding-left: 15px;
        }

        aside ul li a{
          display: inline-block;
          text-decoration: none;
          background-color: #080;
          padding: 5px;
          width: 139px;
          color: white;
          border-bottom: 1px solid black;
        }

        aside ul li a:hover{
          background-color: #050;
        }

        section{
          height: 500px;
          width: 964px;
          background-color: green;
        }

        footer{
          clear: both;
          background-color: yellow;
          text-align: center;
          padding: 5px;
        }

        .clearfix:after{
          content: " ";
          display: block;
          clear: both;
          visibility: hidden;
          line-height: 0;
          height: 0;
        }

        .clearfix{
          display: inline-block;
        }
      </style>
  </head>
  <body>
    <header><h1>Header</h1></header>
      <nav class="clearfix">

        <ul>
          <li><a href="#">HOME</a></li>
          <li><a href="#">CONTACT</a></li>
          <li><a href="#">ABOUT</a></li>
        </ul>
      </nav>
      <aside>
        <ul>
          <li><a href="#">Champions</a></li>
          <li><a href="#">Runes</a></li>
          <li><a href="#">Skins</a></li>
          <li><a href="#">Masteries</a></li>
        </ul>
      </aside>
    <section></section>
    <footer>footer</footer>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

我只想消除导航和旁边之间的空间,但是在导航附近的每个容器上放置边距:0都不起作用.

小智 6

:after是一个伪元素,它告诉浏览器在内容之后在元素内呈现假元素.

.clearfix:after{
    content: "";
    display: block;
    clear: both;
}
Run Code Online (Sandbox Code Playgroud)

这是一个块元素,这意味着它占用了它的父级的全宽.但是,以下规则使伪元素的父元素.clearfix成为内联块元素.这意味着该元素将仅占用其内容所需的最小宽度.

.clearfix{
    display: inline-block;
}
Run Code Online (Sandbox Code Playgroud)

您正在看空间,因为内联块元素以字符形式内联呈现,元素两侧的空白区域呈现为单个空格.您可以使用以下任一方法解决此问题.