zoukankan      html  css  js  c++  java
  • css两端对齐——div+css布局实现2端对齐的4种方法总结

    div+css布局实现2端对齐是我们网页排版中经常会使用到的,这篇文章将总结一下可以实现的方法:

    html结构

    实现demo里面的div通过Css进行2端对齐。

    1 <div class="box">
    2     <div class="demo">
    3         <div>1</div>
    4         <div>2</div> 
    5         <div>3</div>
    6     </div>
    7 </div>
    1.margin负值的方式

    该方法需要外面多嵌套一层来实现,通过元素的间距,做为中间层的margin溢出值来实现

     1 <style>
     2 .box{
     3      300px;margin:auto;overflow:hidden;border:1px solid #ddd;
     4 }
     5 .box .demo{
     6     margin-left:-10px;310px
     7 }
     8 .box .demo div{
     9      93.333px;/*(计算:(300-10*2)/3)*/
    10      float:left;
    11      margin-left:10px;
    12 }
    13 </style>
    2.display:inline-block/text-align:justify方式

    justify方式比较简单方便。只要一个简单元素做了声明,里面的元素就自动等间距两端对齐布局啦!根本无需计算每个列表元素间的margin间距,更不用去修改父容器的宽度。

    注意一点:demo结构内元素必须存在【换行符】或【空格符】,否则直接连着写将不会生效

     1 <style>
     2 .demo{
     3      margin:0;padding:0;
     4      text-align:justify;
     5      text-align-last:justify;/*解决IE的支持*/
     6      line-height:0;/*解决标准浏览器容器底部多余的空白*/
     7 }
     8 @media all and (-webkit-min-device-pixel-ratio:0){
     9   .demo{
    10      font-size:0;/*webkit清除元素中使用[换行符]或[空格符]后,最后元素多余的空白*/
    11   }
    12 }
    13 .demo:after{/*text-align-last:justify只有IE支持,标准浏览器需要使用 .demo:after 伪类模拟类似效果*/
    14      display:inline-block;
    15      overflow:hidden;
    16      100%;
    17      height:0;
    18      content:'';
    19      vertical-align:top;/*opera浏览器解决底部多余的空白*/
    20 }
    21 .demo div{
    22      20%;
    23      display:inline-block;
    24      text-align:center;/*取消上层元素的影响*/
    25      text-align-last:center;
    26      font-size:12px;
    27 }
    28 </style>
    3.css3 属性 space-between

    该方法基于webkit内核的webapp开发和winphone IE10及以上,常用于移动端布局。

     1 <style>
     2 .demo{
     3     display:-webkit-box;
     4     display:-webkit-flex;
     5     display:-ms-flexbox;
     6     display:flex;
     7     -webkit-box-pack:justify;
     8     -webkit-justify-content:space-between;
     9     -ms-flex-pack:justify;
    10     justify-content:space-between;
    11 }
    12 
    13 .demo div{
    14      30%; 
    15 }
    16 </style>

    办公资源网址导航 https://www.wode007.com

    4.css3属性column-count

    column属性是多列布局,使用column来实现两端对齐只需要设置模块的个数跟column的列数一致即可,推荐使用于移动端布局

     1 <style>
     2 .demo{
     3      -webkit-column-count:3;-moz-column-count:3;column-count:3;
     4      -webkit-column-gap:10px;-moz-column-gap:10px;column-gap:10px; 
     5 }
     6 
     7 .demo div{
     8      
     9 }
    10 </style>

    完结~~~~~有更好的实现请留言哦

  • 相关阅读:
    从Object对象中读取属性的值
    CentOS7安装Mysql
    CentOS初使用命令总结
    linux安装git、node、pm2
    将 ELASTICSEARCH 写入速度优化到极限
    Elasticsearch
    elasticsearch5.0.1集群索引分片丢失的处理
    ELASTICSEARCH健康red的解决
    使用linux远程登录另一台linux
    fiddler构造表单上传文件的请求
  • 原文地址:https://www.cnblogs.com/ypppt/p/12922888.html
Copyright © 2011-2022 走看看