zoukankan      html  css  js  c++  java
  • 解决margin-top没有效果

     margin-top没有效果怎么办?

    代码如下所示:(其中#div2嵌套在#div1中)

    <!--css样式-->
    #div1{
     100px;
     height:100px;
     background:green;
    }
    
    #div2{
     margin-top:10px;
     50px;
     height:50px;
     background:red;
    }
    <!--html代码-->
    <div id="div1">
       <div id="div2"></div> 
    </div>

     样式设置成如上后,#div1与#div2的上边距重合。

    解决方法如下

    1.为#div1设置一个透明边框:border:1px solid transparent;

    <!--css样式-->
    #div1{
     100px;
     height:100px;
     background:green;
     border-top:1px solid transparent;
    }
    
    #div2{
     margin-top:10px;
     50px;
     height:50px;
     background:red;
    }
    <!--html代码-->
    <div id="div1">
       <div id="div2"></div> 
    </div>

    注:这样做会使#div1的宽度和高度均增加2px,影响美观;

    2.给#div1的上边框设置一个内边距,值为10px,那么#div1的高度减去10px,因为设置内边距后,自身会膨胀,并且去掉#div2中margin-top属性。

    <!--css样式-->
    #div1{
     100px;
     height:90px;
     background:green;
     padding-top:10px;
    }
    
    #div2{
     50px;
     height:50px;
     background:red;
    }
    <!--html代码-->
    <div id="div1">
       <div id="div2"></div> 
    </di>

    3.引入一个高度为0的div,且其内容为&nbsp;

    <!--css样式-->
    #div1{
     100px;
     height:100px;
     background:green;
    }
    
    #div2{
     margin-top:10px;
     50px;
     height:50px;
     background:red;
    }
    <!--html代码-->
    <div id="div1">
       <div id="div3" style="height:0px">&nbsp;</div>
       <div id="div2"></div> 
    </div>

    注意:新增的div中的&nbsp;不能省略。

  • 相关阅读:
    .net基础学java系列(一)视野
    技术栈
    Apollo(阿波罗)携程开源配置管理中心
    .NET 动态调用WCF
    RPC 工作原理
    ServiceStack 简单使用
    PRC 框架选择
    栈vs堆,最详细的对比
    使用SuperSocket打造逾10万长连接的Socket服务
    开源项目练习EF+jQueryUI前后端分离设计
  • 原文地址:https://www.cnblogs.com/yddlvo/p/4659981.html
Copyright © 2011-2022 走看看