zoukankan      html  css  js  c++  java
  • css margin参考和两个div水平排列的解决方案

    首先自己给出margin的四个值的顺序,这个不是难点但是自己列在这里作为参考吧:

    例子 1

    margin:10px 5px 15px 20px;
    上外边距是 10px
    右外边距是 5px
    下外边距是 15px
    左外边距是 20px

    例子 2

    margin:10px 5px 15px;
    上外边距是 10px
    右外边距和左外边距是 5px
    下外边距是 15px

    例子 3

    margin:10px 5px;
    上外边距和下外边距是 10px
    右外边距和左外边距是 5px

    例子 4

    margin:10px;
    所有 4 个外边距都是 10px

    还有要注意inherit的话是从父亲那里继承页边距,不是说没有页边距了。

    然后这里给出div水平排列的解决方案,实际上这里的用法还是蛮多的

    1.使用inline属性

    div style="300px; height:auto; float:left; display:inline">AAAA</div>  
    
    <div style="300px; height:auto; float:left; display:inline">BBBB</div>

    2.对于两个div并排,左边为绝对宽度,右边为相对宽度的,需要用到这种布局的情况比较多见,如左边为导航,右边为内容的页面

    1、将最大的容器padding-left固定宽度,左边的固定宽度的一块position:absolute,然后right的一块width为百分百

    2、 使用position:absolute。代码如下。

    <style>  
    body{ margin:0; height:100%}  
    html{ height:100%} /*兼容firefox的div高度100%*/  
    #left{ position:absolute; top:0; left:0; width:200px; height:100%; background-color:#CCCCCC}  
    #right{ margin-left:200px; height:100%; background-color:#0099FF}  
    </style>  
    <div id="left">left</div>  
    <div id="right">right</div>
    <style>  
    body{ margin:0; height:100%}  
    html{ height:100%} /*兼容firefox的div高度100%*/  
    #left{ position:absolute; top:0; left:0; width:200px; height:100%; background-color:#CCCCCC}  
    #right{ margin-left:200px; height:100%; background-color:#0099FF}  
    </style>  
    <div id="left">left</div>  
    <div id="right">right</div> 

    这段代码主要涉及到以下两点点比较重要的:

    (1)兼容firefox实现div高度100%;
    (2)div绝对定位的妙用;在页面布局的时候,position:absolute如果灵活的应用,可以达到很好的效果。

    3、 使用float解决div左右布局,左为绝对宽度,右为相对宽度问题

    <style type="text/css">  
    body{ margin:0; height:100% }  
    html{ height:100% }  
    #left{ width:150px; height:100%; float:left; _margin-right:-3px; background-color: yellow }  
    #main{ height:100%; background-color: green }  
    </style>  
    
    <div id="left"></div>  
    <div id="main"></div>  

    4、代码如下。方法3可能没有按照题目要求,但是可以达到一样的页面效果。主要是使用了div的float属性。

    <style>  
    body{ margin:0; height:100%}  
    html{ height:100%} /*兼容firefox的div高度100%*/  
    #left{ width:200px; height:100%; background-color:#CCCCCC; float:left}  
    #main{ width:100%; height:100%; background-color:#0099FF}  
    </style>  
    <div id="main">  
    <div id="left">left</div>  
    Right  
    </div>  
  • 相关阅读:
    ngix反向代理-之反向
    redux和flux究竟有什么不同, 说点自己的理解
    npm发包记录
    由一个聚焦-focus-事件异常跟踪引起的总结
    git查看分支的几个方法
    test-your-mind-快速测试自己的代码
    contos7 yum安装php7.2与swoole (2)
    php_ thinkphp 时间回滚
    30个php操作redis常用方法代码例子
    redis_php 安装与卸载
  • 原文地址:https://www.cnblogs.com/zjunet/p/4559894.html
Copyright © 2011-2022 走看看