how to delete extra space between buttons?

前端 未结 9 2118
情歌与酒
情歌与酒 2020-12-28 16:13

please check out this code in jsfiddle

HTML:


      
      
9条回答
  • 2020-12-28 17:05

    Get rid of the spaces themselves: this may look messy but actually it's the cleanest thing you can do. Anything you achieve with CSS tricks is just putting the spaces there and then denying their existence. Instead, you might want to omit them; the only problem to solve is readability.

    So let's make it readable:

    <div id="main">
        <div id="menu">
            <!--
            --><a href="#" class="buttons">Home</a><!--
            --><a href="#" class="buttons">About Us</a><!--
            --><a href="#" class="buttons">Pictures</a><!--
            --><a href="#" class="buttons">Contact Us</a><!--
            -->
        </div>
    </div>
    

    Again, I know it seems weird, yes, but think about it. The real weirdo here is HTML itself, not giving you a clear way to do this. Consider it a special markup! It could as well be part of the HTML standard; technically, btw, it is 100% standard, you are free to use comments...

    0 讨论(0)
  • 2020-12-28 17:05

    here is your solution

    http://jsfiddle.net/NPqSr/7/

    .buttons
    {
        text-decoration: none;
        color: #ffffff;
        line-height: 3em;
        display: inline-block;
        padding-left: 10px;
        float:left;
        padding-right: 10px;
        font-family: courier new;
        -moz-transition: 1s linear;
        -ms-transition: 1s linear;
        -o-transition: 1s linear;
        -webkit-transition: 1s linear;
        transition: 1s linear;
    }
    
    0 讨论(0)
  • 2020-12-28 17:10

    It's 2017: wrap them inside an element with display: inline-flex and flex the inner buttons with something like flex: 0 1 auto:

    <div style="display: inline-flex">
        <button style="flex: 0 1 auto">...</button>
    
    0 讨论(0)
提交回复
热议问题