如何用CSS做自适应九宫格效果,有多少方法
Admin 2022-11-02 群英技术资讯 311 次浏览
本文用示例介绍CSS进行九宫格布局的方法。朋友圈、微博等很多社交平台都是使用九宫格布局来展示图片的,九宫格布局也是前端面试经常会问的问题。 本文只展示自适应布局的方案。不展示手动指定宽度的那种方案。
grid是专门用来处理二维的,最适合用来二维布局。
代码
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>This is title</title> <style> .container { display: grid; grid-template-columns: 1fr 1fr 1fr; grid-template-rows: 100px 100px 100px; grid-gap: 10px; padding: 10px; } .item { border: 1px solid black; </style> </head> <body> <div class="container"> <div class="item">1</div> <div class="item">2</div> <div class="item">3</div> <div class="item">4</div> <div class="item">5</div> <div class="item">6</div> <div class="item">7</div> <div class="item">8</div> <div class="item">9</div> </div> </body> </html>
结果
因为flex是面向一维的,所以我们需要加上calc这个函数控制其垂直方向。
代码
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>This is title</title> <style> .container { width: 100%; display: flex; /*换行*/ flex-wrap: wrap; } .item { width: calc(calc(100% / 3) - 10px); height: 100px; margin: 5px; box-sizing: border-box; border: 1px solid black; </style> </head> <body> <div class="container"> <div class="item">1</div> <div class="item">2</div> <div class="item">3</div> <div class="item">4</div> <div class="item">5</div> <div class="item">6</div> <div class="item">7</div> <div class="item">8</div> <div class="item">9</div> </div> </body> </html>
结果
代码
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>This is title</title> <style> html,body{ height:100%; margin:0; } .container{ position:absolute; left:0; top:0; right:0; bottom:0; .item{ float:left; height:100px; width: calc(calc(100% / 3) - 10px); position:relative; border: 1px solid black; .item:before{ content:''; left:10px; right:10px; top:10px; bottom:10px; border-radius:10px; .item:after{ content:attr(data-index); height:30px; margin:auto; text-align:center; </style> </head> <body> <div class="container"> <div class="item" data-index="1"> </div> <div class="item" data-index="2"> <div class="item" data-index="3"> <div class="item" data-index="4"> <div class="item" data-index="5"> <div class="item" data-index="6"> <div class="item" data-index="7"> <div class="item" data-index="8"> <div class="item" data-index="9"> </div> </body> </html>
结果
赞到此,关于“如何用CSS做自适应九宫格效果,有多少方法”的学习就结束了,希望能够解决大家的疑惑,另外大家动手实践也很重要,对大家加深理解和学习很有帮助。如果想要学习更多的相关知识,欢迎关注群英网络,小编每天都会给大家分享实用的文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
不依赖javascript,直接使用纯css实现 svg 的描边绘制动画效果,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友参考下吧
这篇文章主要介绍了CSS3为背景图设置遮罩并解决遮罩样式继承问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
本篇文章给大家带来的内容是关于Canvas图片跨域会遇到的问题及解决方法总结,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
这篇文章主要介绍了CSS定位的教程,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
这篇文章主要介绍了基于CSS 判断鼠标进入的方向的实现代码,代码简单易懂,非常不错,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008