CSS实现三列等高布局有几种方式,哪种好?
Admin 2022-02-12 群英技术资讯 386 次浏览
这篇文章给大家分享的是用CSS如何实现三列等高布局。等高布局是在不手动设置元素高度的情况下,各个元素高度都相当的效果。小编觉得挺实用的,因此分享给大家做个参考,文中的示例代码介绍得很详细,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。
1、使用table-cell实现(兼容IE8)
<style> body,div,ul,li{margin: 0;padding: 0;} li{list-style: none;} .table-layout-container{ width: 50%; margin: 20px auto; } .table-row-layout{ /* 当元素display设置为table-row后,再设置宽度就没有效果了,因此需要再包裹一层div,然后给它设置宽度 */ display: table-row; } .table-cell-layout{ display: table-cell; width: 33.33%; padding: 10px; border: 1px solid #ccc; border-left: none; } .table-cell-layout:first-child{ border-left: 1px solid #ccc; } </style> <body> <div class="table-layout-container"> <ul class="table-row-layout"> <li class="table-cell-layout"> 行业的发展必然带来职业的细分,在前端领域也一样,目前行业前端有下面这几个方向:界面展现用户体验和可访问性方向、 后的js/nodejs开发方向、audio/video音视频富媒体方向、SVG/canvas/webGL动效创意表现与数据可视化方向、工具建设 文档管理内部站建设的前端运维方向以及会议预定团建组织对外品牌宣传的前端运营方向。 </li> <li class="table-cell-layout"> 由于每个人的性格特质,成长经历的差异,自然适合的方向也不一样。感性细腻有设计背景可以专注于用户体验,纯逻辑工程 化思维浓郁则更适合偏后开发,数学物理强悍可以考虑数据可视化方向,沟通协调能力很强可以朝着前端运营方向努力。 </li> <li class="table-cell-layout"> 在学生时代,大家都很纯粹,我喜欢这个就学这个,例如,很多女生很喜欢CSS,写页面,做效果。但是,等她开始找工作, 还是接触真实的行业圈子的时候,事情就发生了变化。 </li> </ul> </div> </body>
2、使用flex布局实现
<style> body,div,ul,li{margin: 0;padding: 0;} li{list-style: none;} .flex-layout{ display: flex; width: 50%; margin: 20px auto; } .flex-item{ width: 33.33%; padding: 10px; border: 1px solid #ccc; border-left: none; } .flex-item:first-child{ border-left: 1px solid #ccc; } </style> <body> <ul class="flex-layout"> <li class="flex-item"> 行业的发展必然带来职业的细分,在前端领域也一样,目前行业前端有下面这几个方向:界面展现用户体验和可访问性方向、偏后 的js/nodejs开发方向、audio/video音视频富媒体方向、SVG/canvas/webGL动效创意表现与数据可视化方向、工具建设文档管理内部站建设的 前端运维方向以及会议预定团建组织对外品牌宣传的前端运营方向。 </li> <li class="flex-item"> 由于每个人的性格特质,成长经历的差异,自然适合的方向也不一样。感性细腻有设计背景可以专注于用户体验,纯逻辑工程化思 维浓郁则更适合偏后开发,数学物理强悍可以考虑数据可视化方向,沟通协调能力很强可以朝着前端运营方向努力。 </li> <li class="flex-item"> 在学生时代,大家都很纯粹,我喜欢这个就学这个,例如,很多女生很喜欢CSS,写页面,做效果。但是,等她开始找工作,还是接 触真实的行业圈子的时候,事情就发生了变化。 </li> </ul> </body>
3、利用margin实现等高布局(实际开发中不建议使用)
实现上面的等高布局除了可以使用table-cell、flex布局外还可以利用margin负值来实现
<style> body,div,ul,li{margin: 0;padding: 0;} li{list-style: none;} .marign-layout{ width: 50%; margin: 20px auto; overflow: hidden; } .item{ float: left; width: 30%; padding: 10px; margin-bottom: -9999px; padding-bottom: 9999px; border: 1px solid #ccc; border-left: none; } .item:first-child{ border-left: 1px solid #ccc; } </style> <body> <ul class="marign-layout"> <li class="item"> 行业的发展必然带来职业的细分,在前端领域也一样,目前行业前端有下面这几个方向:界面展现用户体验和可访问性方向、偏后 的js/nodejs开发方向、audio/video音视频富媒体方向、SVG/canvas/webGL动效创意表现与数据可视化方向、工具建设文档管理内部站建设的 前端运维方向以及会议预定团建组织对外品牌宣传的前端运营方向。 </li> <li class="item"> 由于每个人的性格特质,成长经历的差异,自然适合的方向也不一样。感性细腻有设计背景可以专注于用户体验,纯逻辑工程化思 维浓郁则更适合偏后开发,数学物理强悍可以考虑数据可视化方向,沟通协调能力很强可以朝着前端运营方向努力。 </li> <li class="item"> 在学生时代,大家都很纯粹,我喜欢这个就学这个,例如,很多女生很喜欢CSS,写页面,做效果。但是,等她开始找工作,还是接 触真实的行业圈子的时候,事情就发生了变化。 </li> </ul> </body>
使用margin负值有一个缺点,如图:
底部边框不见了,因为被父元素的overflow: hidden;切割掉了。
关于CSS实现三列等高布局的方法就介绍到这,上述方法和示例具有一定的借鉴价值,感兴趣的朋友可以参考。但是,第三种方法,实际开发中不建议使用。最后,想要了解更多CSS实现其他布局的方法,大家可以关注群英网络的其它相关文章。
文本转载自脚本之家
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
用纯CSS怎样做弹出菜单的效果?弹出菜单是比较常见的一种菜单,也就是弹出的二级菜单的效果。而实现弹出二级菜单有很多方法,本文给大家分享的是CSS3中的transform属性实现弹出菜单,实现效果及代码如下:
css设置上边距的方法一:使用margin-top属性margin-top属性可以设置元素的上外边距围绕在元素边框的空白区域是外边距。设置外边距会在元素外创建额外的“空白”。
语义化的标签,旨在让标签有自己的含义。<p>一行文字</p><span>一行文字</span>二、语义化标签的优势实现了无障碍访问:使其内容对于借助辅助技术的残障访问者也是可以访问的,对于台式机、手机、平板或是其他设备上的浏览器都是可以访问的;’搜索引擎优化:网页在搜索引擎中的排名会靠前,因为搜索引擎对用特殊标记的内容赋予更高的权
在实际项目中,我们通常会需要做一些跨多平台的页面。本文主要介绍了Html5同时支持多端sdk的小技巧,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
这篇文章主要给大家分享如何用CSS3来实现红包抖动效果,小编觉得挺有趣,因此给大家分享一下实现代码,感兴趣的朋友可以参考参考,下面我们就一起来看看。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008