当前位置: 首页 > news >正文

多列等高布局

多列等高布局是在一个容器里面,并排的多列,如果内容的高度无法在一开始确定(例如内容是动态的),又需要让各列自然地撑开(不出现每列里面的滚动条),这时候需要用css或者js的方法把各列高度设置为最高列的高度。这里我们介绍纯css实现方法。

程序代码:

<div id="container">
  <div class="col">
    <img src="trend.png">
    <h1>Trend</h1>
        <p>The tool refers to periodic trends for collecting and analyzing weak signals and trends in chemistry.</p>
  </div>
  <div class="col">
    <img src="user.png">
    <h1>User</h1>
    <p>User namespaces are now fully implemented as of document is obsolete.</p>
  </div>
  <div class="col">
    <img src="picture.png">
    <h1>Picture</h1>
    <p>Taking good pictures is something anyone can do with any camera, if you practice enough and avoid some common mistakes..</p>
  </div>

</div>

这时候用浮动布局让三个col并列:

.col {
  float: left;
  width: 33.33%;
  padding: 20px;
  color: #fff;
  text-align: center;
  background: #2980b9;
}

可以看到出现这样三列:因为内容区域的大小不同导致高度不同。如果内容区域是动态的,我们也不能够直接把高度都设置成最高的那列。

 

这时候,我们给col增加样式:

padding-bottom: 500px;

出现的效果是:红色代表父元素,蓝色代表子元素原来的内容,也就是父元素和子元素都因为padding被撑开了。

 

这时,再给col增加样式
margin-bottom: -500px;

这时候,相当于三个子元素都超出父元素边界500px,也就是父元素的border-bottom往上移动500px,刚好到了最长元素的内容区域。

这时候再给父元素设置overflow:hidden就可以把黄色下面的区域隐藏掉,实现三列等高布局。 

多列等高布局的一个解决思路就是:先给几个子元素设置一个比较大的padding-bottom和一个等值的负数margin-bottom,也就是相当于在父元素溢出了,这时候再从父元素那里设置overflow:hidden,就可以裁剪掉溢出的部分。并且是最高的元素溢出最多,这时候隐藏掉溢出的部分,并行的列就都等高了。

 

转载于:https://www.cnblogs.com/lssthinkingontheway/p/7764435.html

相关文章:

  • 前端小姿势
  • 杀死进程命令
  • Android******Context******
  • 推荐几款专门为Github党量身定做的Chrome插件
  • 算法导论Java实现-二分查找运用(习题2.3-7)
  • [20171102]视图v$session中process字段含义
  • [SDOI2010]大陆争霸
  • centos模板机制作前修改配置
  • 编程之用户体验
  • SQL UPDATE实现多表更新
  • 常用的JavaScript验证正则表达式
  • 在VMware Workstation上安装Ubuntu 16.04 Server操作系统
  • Linux安装yum源码包及相关操作
  • Windows Embedded CE链接RNDIS的奇怪问题
  • 10个完整的Android开源项目,值得大家学习借鉴
  • 【翻译】babel对TC39装饰器草案的实现
  • Elasticsearch 参考指南(升级前重新索引)
  • JavaScript工作原理(五):深入了解WebSockets,HTTP/2和SSE,以及如何选择
  • Java面向对象及其三大特征
  • Lsb图片隐写
  • mongodb--安装和初步使用教程
  • OpenStack安装流程(juno版)- 添加网络服务(neutron)- controller节点
  • React组件设计模式(一)
  • Spring思维导图,让Spring不再难懂(mvc篇)
  • Zsh 开发指南(第十四篇 文件读写)
  • 百度地图API标注+时间轴组件
  • 从0实现一个tiny react(三)生命周期
  • 第2章 网络文档
  • 看域名解析域名安全对SEO的影响
  • 判断客户端类型,Android,iOS,PC
  • 微信如何实现自动跳转到用其他浏览器打开指定页面下载APP
  • 微信小程序--------语音识别(前端自己也能玩)
  • 为视图添加丝滑的水波纹
  • 消息队列系列二(IOT中消息队列的应用)
  • 在Unity中实现一个简单的消息管理器
  • 宾利慕尚创始人典藏版国内首秀,2025年前实现全系车型电动化 | 2019上海车展 ...
  • 国内唯一,阿里云入选全球区块链云服务报告,领先AWS、Google ...
  • 整理一些计算机基础知识!
  • ​低代码平台的核心价值与优势
  • #我与Java虚拟机的故事#连载18:JAVA成长之路
  • $forceUpdate()函数
  • (06)金属布线——为半导体注入生命的连接
  • (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (function(){})()的分步解析
  • (补)B+树一些思想
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (附源码)ssm基于web技术的医务志愿者管理系统 毕业设计 100910
  • (十)【Jmeter】线程(Threads(Users))之jp@gc - Stepping Thread Group (deprecated)
  • (万字长文)Spring的核心知识尽揽其中
  • (转)四层和七层负载均衡的区别
  • (转)我也是一只IT小小鸟
  • *2 echo、printf、mkdir命令的应用
  • .Net mvc总结
  • .NET Standard、.NET Framework 、.NET Core三者的关系与区别?
  • .NET Windows:删除文件夹后立即判断,有可能依然存在