美文网首页
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