博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CSS布局自适应等分比例
阅读量:6713 次
发布时间:2019-06-25

本文共 1606 字,大约阅读时间需要 5 分钟。

CSS等比例划分,在CSS布局中是比较重要的,下面分享几种常用方法和探讨一下兼容性。

  一:浮动布局+百分比
  emmet html代码:ul.float-ul>li*5>.con>h3{等分标题}+p{等分内容等分内容}
  .float-ul{width: 100%; overflow: hidden; zoom: 1;}
  .float-ul li{float: left; width: 20%;}
  该样式兼容性较好,但是无法实现当里面的列增多时比例也随着变化,必须手动修改,当然你也可以使用一个js来调整了。
  二:行内元素(inline-block)+百分比
  
  参考之前写过的inline-block替换float的代码,使用该样式还可以实现布局居中等块级元素所具有的特性。
  .inline-ul{font-size: 0; *word-spacing: -1px;}
  .inline-ul li{display: inline-block; *display: inline; *zoom: 1; font-size: 14px; vertical-align: top; word-spacing: normal; letter-spacing: normal; width: 20%;}
  @media screen and (-webkit-min-device-pixel-ratio:0){
  .inline-ul{letter-spacing: -5px;}
  }
  三:display:table + display:table-cell
  feng.lhport.com
  我们知道表格可以根据内容进行划分,CSS也有一个样式是display:table来实现类似表格的布局,不过不支持IE8以下浏览器。
  .table-cell{display: table; width: 100%;}
  .table-cell li{display: table-cell;}
  四:使用css3 display:flex.
  旧语法:
  .flex-ul{display: -webkit-box; display: box;}
  .flex-ul li{-webkit-box-flex:1; box-flex:1;}
  新语法:
  .flex-ul{display:-webkit-flex; display: flex; width: 100%;}
  .flex-ul li{-webkit-flex:1; flex:1;}
  该方法只适用于高级浏览器,IE10以下的还是算了。具体介绍
  五:使用栅格化系统
  542.lslz.net
  例如Bootstrap的栅格化系统
  <div class="container">
  <div class="row">
  <div class="col-md-3"></div>
  ...
  </div>
  </div>
  .col-md-3 { float:left; }
  @media (min-width: 992px) {
  .col-md-3 { width: 25%; }
  /* 父级容器的3/12 */
  }
  缺点和第一个的float一样,需要根据列数来跳出宽度调整。
  总结:
  如果需要兼容IE6-IE7的,如果列数固定可以使用第一种和第二种。如果列数不固定,可以加少量js支持。
  如果是只考虑移动的,考虑第三种,兼容性比下面的flex支持的比较好。
  如果单纯的不考虑低版本浏览器的,可以考虑使用第四种。

转载于:https://www.cnblogs.com/liuxinyufx/p/4141070.html

你可能感兴趣的文章
普通html标签<form>和struts2<s:form>的区别
查看>>
安装NTFS For Mac时显示文件已损坏怎么办
查看>>
-webkit-line-clamp实现多行文字溢出隐藏显示省略号
查看>>
Sublime Text 3 - 设置自动换行
查看>>
nil / Nil / NULL / NSNull in Objective-C
查看>>
iphone系统架构以及各层提供的主要服务
查看>>
配置sunspot tomcat结合sunspot_rails
查看>>
数据库分库分表中间件 Sharding-JDBC 源码分析 —— SQL 执行
查看>>
飞信系统4月29日升级后飞信机器人无法使用的解决办法
查看>>
Linux Epoll介绍和程序实例
查看>>
Canonical今天宣布推出Plex Media Server作为Snap Store中的Snap应用程序
查看>>
gdb 学习1
查看>>
SVG TEXT 水平和垂直方向居中
查看>>
Kurento API 参考
查看>>
兼容IE的radio遍历
查看>>
Ossim下RRDTool实战
查看>>
向服务器请求XML数据时中文乱码
查看>>
微信消息接口发送信息到分组和用户,错误代码40003和40008
查看>>
HTTP状态码 错误列表
查看>>
Font Awesome
查看>>