zoukankan      html  css  js  c++  java
  • float 与 display:inline-block

    float:

    1.会导致高度塌陷

    <style type="text/css">
        li{
            float:left;
            height:200px;
            200px;
            background-color: red;
            margin:10px;
            font-size: 50px;
            text-align: center;
            line-height: 200px;
            list-style: none
        }
        ul{
            border:5px solid green;    
            100%;
        }
    <style>
    
    <ul>
        <li>1</li>
        <li>2</li>
    </ul>

    2.若float元素高度不一,会形成锯齿状

    <style type="text/css">
        div{
            float:left;
            height:200px;
            200px;
            background-color: red;
            margin:10px;
            font-size: 50px;
            text-align: center;
            line-height: 200px;
    }
        div.q1{
            height:500px;
    }
            
    </style>  
    
    
    <div>1</div>
    <div class="q1">2</div>
    <div>3</div>
    <div>4</div>
    <div>5</div>
    <div>6</div>
    <div>7</div>   

    2.display:inline-block

      注:每一行所有的inline元素与inline-block元素 会形成一个inline box ,该inline box的高度由inline 或inline-block元素的高度来决定,所以不会出现锯齿状

      

      问题:换行符与空格间隙问题

         (1)空格符的本质就是透明的字符,所有可以通过font-size:0 来去除空格

         (2)letter-spacing 属性

      总结:

        block水平的元素inline-block化后,IE6/7没有换行符间隙问题,其他浏览器均有;
        inline水平的元素inline-block后,所有主流浏览器都有换行符/空格间隙问题;
        font-size:0,去除换行符间隙,在IE6/7下残留1像素间隙,其他浏览器都完美去除;
            letter-spacing负值可以去除所有浏览器的换行符间隙。

  • 相关阅读:
    php中的一些需要注意点
    提权以及反弹shell一些方法
    SVN源码泄露漏洞
    网易白帽子视频的一些笔记
    sql注入的一些笔记
    URL中的"#"、"?"、"&"号的作用
    Asp.net mvc基础(十五)EF原理及SQL监控
    Asp.net mvc基础(十四)Entity Framework
    Asp.net mvc基础(十三)集合常用的扩展方法和Linq语句
    Linux运维基础(二)网络常见问题
  • 原文地址:https://www.cnblogs.com/DB-IT/p/8504131.html
Copyright © 2011-2022 走看看