当前位置:首页 > 科技  > 软件

CSS 如何改变网格布局偶数行的排序?

来源: 责编: 时间:2023-08-14 22:00:39 403观看
导读最近在项目中看到这样一个布局,如下图片布局本身没什么奇怪的,就是 「4 * 2」 的网格,比较特殊的是第二行布局是从右往左的,整体是一个这样的顺序图片而这个列表是通过一个数组动态渲染的,可能有很多同学会将这个数组分成

最近在项目中看到这样一个布局,如下LVf28资讯网——每日最新资讯28at.com

图片图片LVf28资讯网——每日最新资讯28at.com

布局本身没什么奇怪的,就是 「4 * 2」 的网格,比较特殊的是第二行布局是从右往左的,整体是一个这样的顺序LVf28资讯网——每日最新资讯28at.com

图片图片LVf28资讯网——每日最新资讯28at.com

而这个列表是通过一个数组动态渲染的,可能有很多同学会将这个数组分成两份,然后将第二份进行反向,类似于这样LVf28资讯网——每日最新资讯28at.com

let arr1 = list.slice(0, 4)let arr2 = list.slice(4, 8).reverse()

然后,由于第二行的第一个其实是原数组的第八个,还需要针对第二行做额外的处理,比如序列LVf28资讯网——每日最新资讯28at.com

// 第一行第 {{ i }} 个// 第二行第 {{ 8 - i }} 个

而且,如果有点击事件,传值也需要额外处理,虽然也能实现,但显然是太麻烦,而且还容易出 bug。LVf28资讯网——每日最新资讯28at.com

LVf28资讯网——每日最新资讯28at.com

那么,有没有其他更简单、更稳定的方式来解决呢?也就是如何让第二行子项反向呢?LVf28资讯网——每日最新资讯28at.com

一、flex 布局实现

由于这里是动态渲染,所以最理想的结构应该是这样的,直接一层循环搞定LVf28资讯网——每日最新资讯28at.com

<class="list">  <class="item">1</div>  <class="item">2</div>  <class="item">3</div>  <class="item">4</div>  <class="item">5</div>  <class="item">6</div>  <class="item">7</div>  <class="item">8</div></div>

通过 flex 或者 grid都很容易实现4 * 2的布局,先用 flex实现LVf28资讯网——每日最新资讯28at.com

.list{  display: flex;  width: 600px;  gap: 20px;  flex-wrap: wrap;}.item{  width: calc( (100% - 60px) / 4 );  aspect-ratio: 1/1;  background: royalblue;  color: #fff;  font-size: 30px;  border-radius: 10px;  display: flex;  align-items: center;  justify-content: center;}

可以得到这样的布局LVf28资讯网——每日最新资讯28at.com

图片图片LVf28资讯网——每日最新资讯28at.com

有什么办法在不改变 html 的情况下改变第二行的位置呢?

本文链接:http://www.28at.com/showinfo-26-5698-0.htmlCSS 如何改变网格布局偶数行的排序?

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Feign如何设置超时时间,不同情况下还真不一样

下一篇: 到底该不该使用Python?

标签:
  • 热门焦点
  • 7月安卓手机好评榜:三星S23Ultra好评率第一

    性能榜和性价比榜之后,我们来看最后的安卓手机好评榜,数据来源安兔兔评测,收集时间2023年7月1日至7月31日,仅限国内市场。第一名:三星Galaxy S23 Ultra好评率:95.71%在即将迎来新
  • 十个可以手动编写的 JavaScript 数组 API

    JavaScript 中有很多API,使用得当,会很方便,省力不少。 你知道它的原理吗? 今天这篇文章,我们将对它们进行一次小总结。现在开始吧。1.forEach()forEach()用于遍历数组接收一参
  • 只需五步,使用start.spring.io快速入门Spring编程

    步骤1打开https://start.spring.io/,按照屏幕截图中的内容创建项目,添加 Spring Web 依赖项,并单击“生成”按钮下载 .zip 文件,为下一步做准备。请在进入步骤2之前进行解压。图
  • 一个注解实现接口幂等,这样才优雅!

    场景码猿慢病云管理系统中其实高并发的场景不是很多,没有必要每个接口都去考虑并发高的场景,比如添加住院患者的这个接口,具体的业务代码就不贴了,业务伪代码如下:图片上述代码有
  • 慕岩炮轰抖音,百合网今何在?

    来源:价值研究所 作者:Hernanderz&ldquo;难道就因为自己的一个产品牛逼了,从客服到总裁,都不愿意正视自己产品和运营上的问题,选择逃避了吗?&rdquo;这一番话,出自百合网联合创
  • 三星获批量产iPhone 15全系屏幕:苹果史上最惊艳直屏

    按照惯例,苹果将继续在今年9月举办一年一度的秋季新品发布会,有传言称发布会将于9月12日举行,届时全新的iPhone 15系列将正式与大家见面,不出意外的话
  • iQOO 11S新品发布会

    iQOO将在7月4日19:00举行新品发布会,推出杭州亚运会电竞赛事官方用机iQOO 11S。
  • 首发天玑9200+ iQOO Neo8系列发布首销售价2299元起

    2023年5月23日晚,iQOO Neo8系列正式发布。其中,Neo系列首款Pro之作——iQOO Neo8 Pro强悍登场,限时售价3099元起;价位段最强性能手机iQOO Neo8同期上市
  • 电博会与软博会实现"线下+云端"的双线融合

    在本次“电博会”与“软博会”双展会利好条件的加持下,既可以发挥展会拉动人流、信息流、资金流实现快速交互流动的作用,继而推动区域经济良性发展;又可以聚
Top