• 实用的两列等高布局


    做后台模板的时候会遇到左侧随着右侧高度增加而增加的两列等高布局,查阅资料和总结了一下有以下几种方法:

    HTML代码

     <div id="header">头部</div>
            <div id ="container">
                <div class="mainbox">
                    主内容区域
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                    1<br/>
                </div>
                <div class="sidebox">侧边栏</div>
            </div>
            <div id="footer">页脚</div>

    一:负边距的实现

    *{
        margin:0;
        padding:0;
    }
    #header,#footer{
        width:960px;
        height:30px;
        background-color:#E8E8E8;
    }
    #container{
        width:960px;
        overflow:hidden;/重点!将父级元素多余部分切除掉/
        margin:10px 0;
    }
    .mainbox{
        float:left;
        width:650px;
        background-color:#333333;
    }
    .sidebox{
        float:right;
        width:280px;
        background-color:#AAAAAA;
    }
    .mainbox,.sidebox{
        padding:0 5px;
        color:#FF0000;
        margin-bottom:-9999px;/*将容器背景色拉伸*/
        padding-bottom:9999px;/*将容器背景色拉伸*/
    }
    #container:after{
        display:block;
        visibility:hidden;
        font-size:0;
        line-height:0;
        clear:both;
        content:"";
    }

    二:背景模拟

    *{
        margin:0;
        padding:0;
    }
    #header,#footer{
        width:960px;/*设置头部,页脚宽度*/
        height:30px;/*设置头部,页脚高度*/
        background-color:#6CF;/*设置头部,页脚背景颜色*/
    }
    #container{
        width:960px;/*设置元素宽度*/
        background:url(images/bg.png) repeat-y 0 0; /*将背景图片以y轴重复*/
    }
    .mainbox{
        float:left;/*元素左浮动*/
        width:650px;/*元素宽度*/
    }
    .sidebox{
        float:right;/*元素右浮动*/
        width:280px;/*元素宽度*/
    }
    .mainbox,.sidebox{
         padding:0 5px;
         color:#FF0000;
    }/*设置mainbox,sidebox共同属性*/
    #container:after{
         display:block;
         visibility:hidden;
         font-size:0;
         line-height:0;
         clear:both;
         content:"";
    }/*清楚浮动*/

    三:使用border实现等高

    *{
      margin:0;
      padding:0;
    }
    #header,#footer{
      width:970px;
      height:30px;
      background-color:#9CF;
    }
    #container{
      position:relative;/*将子元素的定位到具体的参照对象*/
      width:970px;
      margin:10px 0;
    }
    .mainbox{
      width:650px;
      background-color:#FC9;
      border-right:320px solid #F63;/*设置左边框宽度为320px像素,同等于sidebox的宽度*/
    }
    .sidebox{
      width:320px;
      position:absolute;
      top:0;
      right:0;/*使元素靠右*/
    }

    另外还有几种CSS3和JS实现的参考以下教程

    http://www.csssea.com/?p=230

    http://www.w3cplus.com/css/creaet-equal-height-columns

  • 相关阅读:
    同时加入两个对等组,在一个对等组中能不能发现另一个对等组发布的通告?
    同步与List
    转:面对JXTA,我迷茫了
    How to inject a new Action into existing Node?
    Eclipse RCP实现自定义闪屏
    Coolface
    关于ResolverService
    关于自定义通告ID的设置
    数字证书中主题(Subject)中字段的含义
    使用CryptoAPI解析X509证书和P12证书
  • 原文地址:https://www.cnblogs.com/leejersey/p/4399139.html
Copyright © 2020-2023  润新知