zoukankan      html  css  js  c++  java
  • CSS自适应布局(包括两边宽度固定中间宽度自适应与中间宽度固定两边宽度自适应)

    1、两边宽度固定,中间宽度自适应

    (1)非CSS3布局,浮动定位都可以(以下用浮动)

    css样式:

    #left { float: left;width: 200px; background: lime;}
    #right { float: right; width: 200px; background: lime;}
    #center { margin:0 200px; background: blue}

    html:

    <div id="left">left</div>
    <div id="right">right</div>
    <div id="center">center</div>

    (2)CSS3布局

    css样式:

    * { padding: 0; margin: 0;}
    body { display: -webkit-box;}
    div { padding: 50px;}
    div[left] { width: 200px; background: lime}
    div[right] { width: 200px; background: lime;}
    div[center] { -webkit-box-flex:1; background: yellow}

    html:

    <div left>left</div>
    <div center>center</div>
    <div right>right</div>

    2、中间宽度固定,两边宽度自适应

    (1)非CSS3布局,浮动与margin解决

    css:

    .center {width: 600px; background: yellow;}
    .center,.left,.right { float: left; }
    .left,.right { width: 50%; margin-left: -300px; }
    .inner { padding: 50px;}
    .left .inner,.right .inner { margin-left: 300px; background: red;}

    html:

    <div class="left">
        <div class="inner">left</div>
    </div>
    <div class="center">
        <div class="inner">center</div>
    </div>
    <div class="right">
        <div class="inner">right</div>
    </div>

    (2)非CSS3布局,定位与margin解决

    css:

    * { padding: 0; margin: 0;}
    #center { width: 600px; background: red; margin: 0 auto;}
    #left { position: absolute; top: 0; left: 0;width: 50%;}
    #right { position: absolute; top: 0; right: 0; width: 50%;}
    #left div { margin-left: 300px; position: relative; left: -300px; background: lime;}
    #right div { margin-right: 300px; position: relative; left: 300px; background: lime;}

    html:

    <div id="left">
        <div>left</div>
    </div>
    <div id="right">
        <div>right</div>
    </div>
    <div id="center">center</div>

    (3)CSS3布局

    css3:

    div[you=me] { display: -webkit-box;}
    div div { background: red; height: 100px;}
    div div:nth-child(1) {-webkit-box-flex:1;}
    div div:nth-child(2) { width: 600px; background: lime}
    div div:nth-child(3) {-webkit-box-flex:1;}

    html:

    <div you="me">
        <div>left</div>
        <div>center</div>
        <div>right</div>
    </div>
  • 相关阅读:
    CPU爆满后的无助感
    JMXtrans + InfluxDB + Grafana实现Zookeeper性能指标监控
    ES三节点重启后报错no known master node
    Docker service update更新不成功的问题
    Zookeeper通过四字命令基础监控(Zabbix)
    contab路径问题(脚本调用另一个文件)
    Python3报错:ModuleNotFoundError: No module named '_bz2'
    Kubernetes概念之deployment
    Python:__eq_和__str__函数的用法
    Python: strip()和split()的用法与区别
  • 原文地址:https://www.cnblogs.com/zhanyishu/p/5656875.html
Copyright © 2011-2022 走看看