美文网首页
CSS中
  • 标签横向排列出现间距问题
  • CSS中
  • 标签横向排列出现间距问题
  • 作者: 帕博雷克斯丢丢 | 来源:发表于2018-09-05 16:18 被阅读0次

      HTML代码块:

      <body>
      <div class="wall">
          <div class="topnav">
              <ul>
                  <li>导航项目1</li>
                  <li>导航项目2</li>
                  <li>导航项目3</li>
                  <li>导航项目4</li>
                  <li>导航项目5</li>
                  <li>导航项目6</li>
                  <li>导航项目7</li>
                  <li>导航项目8</li>
              </ul>
          </div>
      </div>
      </body>
      

      CSS代码块:

      <style>
          html,body,.wall {
              margin: 0;
              border: 0;
              padding: 0;
          }
          .topnav {
              width: 1200px;
              height: 38px;
              margin: 0 auto;
              background-color: red;
              text-align: center;
          }
          .topnav ul {
              font-size: 0;
          }
          .topnav ul,li {
              margin: 0;
              padding: 0;
              display: inline-block;
              list-style-type: none;
          }
          .topnav ul li {
              height: 36px;
              width: 120px;
              font-size: 18px;
              line-height: 36px;
          }
      </style>
      

      显示效果:

      img00001.png
      可以看到每<li>标签之间有明显的间隔,要想办法把它去掉。

      错误原因:

      中间出现间距的原因:<li>标签和<li>标签之间有空格引起;

      解决方法:

      • 方式1:把<ul>中每个相邻标签的回车和空格全部注释掉,HTML代码和效果如下:
      <div class="wall">
          <div class="topnav">
              <ul><!--
                  --><li>导航项目1</li><!--
                  --><li>导航项目2</li><!--
                  --><li>导航项目3</li><!--
                  --><li>导航项目4</li><!--
                  --><li>导航项目5</li><!--
                  --><li>导航项目6</li><!--
                  --><li>导航项目7</li><!--
                  --><li>导航项目8</li><!--
              --></ul>
          </div>
      </div>
      
      img00002.png
      • 方式2:设置<ul>标签的属性 font-size = 0,再重新设置;<li>标签的font-size
      <!-- HTML无需更改代码 -->
      
      <!-- CSS增加代码 -->
      <style>
          .topnav ul {
              font-size: 0;
          }
          .topnav ul li {
              font-size: 18px;
          }
      </style>
      
      img00003.png
      • 方式3:<li>标签的css-style中加入float: left;<li>变成浮动,让各个<li>标签紧挨着排列。同时还可以看到float具有inline元素特性;

      最后一种方法不建议使用,float会使后期修改和添加元素的样式变得难以处理。

      相关文章

        网友评论

            本文标题:CSS中

          • 标签横向排列出现间距问题

            本文链接:https://www.haomeiwen.com/subject/dtbawftx.html