首页 > 其他分享 >css 蛇形排序

css 蛇形排序

时间:2024-07-23 12:19:14浏览次数:12  
标签:flex calc -- item 蛇形 var 排序 order css

先看效果

需求:

    一个【 4  * ?】的网格布局,奇数行 布局 从左往右,偶数行 布局 从右往左。

思路1:

    js将数组按4个每份进行分割,将偶数份进行反向,然后再将分割后的数据,重新组装。( 太麻烦,劝退。)

思路2:

    flex布局,然后用order属性来更改排列顺序。

补充:

    order 属性 : 控制 flex 子项目 的排列顺序 ; 主要是修改前后顺序 , 原来是 1 - 2 - 3 排列顺序 , 可以将其改为 2 - 1 - 3 排列顺序 ;

        默认值 : order 子项目属性 的默认值为 0 ;

        属性值 是数值 , 数值越小 , 排列越靠前 ;

代码:

 

<!DOCTYPE html>
<html lang="en">
  <head>
    <title>蛇形排序</title>
    <meta charset="UTF-8" />
    <meta name="Author" content="" />
    <meta name="Keywords" content="" />
    <meta name="Description" content="" />
  </head>
  <body>
    <div class="list">
      <div class="item" style="--i: 0"><span> 1 </span></div>
      <div class="item" style="--i: 1"><span> 2 </span></div>
      <div class="item" style="--i: 2"><span> 3 </span></div>
      <div class="item" style="--i: 3"><span> 4 </span></div>
      <div class="item" style="--i: 4"><span> 5 </span></div>
      <div class="item" style="--i: 5"><span> 6 </span></div>
      <div class="item" style="--i: 6"><span> 7 </span></div>
      <div class="item" style="--i: 7"><span> 8 </span></div>
      <div class="item" style="--i: 8"><span> 9 </span></div>
      <div class="item" style="--i: 9"><span> 10 </span></div>
      <div class="item" style="--i: 10"><span> 11 </span></div>
      <div class="item" style="--i: 11"><span> 12 </span></div>
    </div>
    <style type="text/css">
      .list {
        display: flex;
        width: 100%;
        gap: 40px;
        flex-wrap: wrap;
      }
      .item {
        width: calc((100% - 120px) / 4);
        aspect-ratio: 3/1;
        background: royalblue;
        color: #fff;
        font-size: 30px;
        border-radius: 10px;
        display: flex;
        align-items: center;
        justify-content: center;
        order: var(--i);
      }
      .item:nth-child(8n + 5) {
        order: calc(var(--i) + 3);
      }
      .item:nth-child(8n + 6) {
        order: calc(var(--i) + 1);
      }
      .item:nth-child(8n + 7) {
        order: calc(var(--i) - 1);
      }
      .item:nth-child(8n + 8) {
        order: calc(var(--i) - 3);
      }
    </style>
  </body>
</html>

 

  

 

标签:flex,calc,--,item,蛇形,var,排序,order,css
From: https://www.cnblogs.com/luobiao/p/18318045

相关文章

  • 【数据结构】排序算法——Lessen1
    Hi~!这里是奋斗的小羊,很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎~~......
  • 冒泡排序与选择排序
    选择排序:(1)首先通过n-1次比较,从n个数中找出最小的,将它与第一个数交换—第一趟选择排序,结果最小的数被安置在第一个元素位置上。(2)再通过n-2次比较,从剩余的n-1个数中找出关键字次小的记录,将它与第二个数交换—第二趟选择排序(3)重复上述过程,共经过n-1趟排序后,排序结束排序原......
  • Java 经典排序算法代码 + 注释分析(冒泡、选择、插入、希尔、快排、计数、堆排、归并)
    Java经典排序算法代码+注释分析(冒泡、选择、插入、希尔、快排、计数、堆排、归并)以下是八种经典排序算法的代码,Java8亲测可用,可以直接运行importjava.util.Arrays;publicclassSort{privatestaticfinalint[]nums={3,44,38,5,47,15,36,26,27......
  • html+css 简易摩天轮效果
    vuedom<divclass="ferris_wheel"><divclass="wheelBg"></div><divclass="wheelBox"><divclass="bg"></div><ulclass="list">......
  • Tailwind CSS 实现响应式布局
    TailwindCSS实现响应式布局CSS3如何实现响应式先聊聊纯CSS方案是怎么做的:使用CSS3特性:@mediascrren表示设备屏幕,and用于并列多个条件一般来讲每个响应式系统的ui规范都要有多个断点:small:640px起,横向模式显示状态的手机medium:768px起,平板large:1024px起,电脑......
  • 常见的排序算法——堆排序(五)
    本文记述了堆排序改用前序表示法基本思想和一份参考实现代码,并在说明了算法的性能后用随机数据进行了验证。◆思想堆排序算法按照层次操作堆中的元素,即物理位置k的节点与位置2k或2k+1的节点交换。然而用前序表示的堆,其父子节点的位置关系不能简单地计算出来。因此,当算法......
  • 冒泡排序
    冒泡排序两层循环,外层冒泡轮数,内层依次比较。时间复杂度O(n2),代码量小,效率较低,小数据好用。publicstaticvoidmain(String[]args){int[]ints={1,24,53,42,5};int[]sort=sort(ints);System.out.println(Arrays.toString(sort));}public......
  • 数据结构-C语言-排序(3)
            代码位置:test-c-2024:对C语言习题代码的练习(gitee.com)一、前言:1.1-排序定义:        排序就是将一组杂乱无章的数据按照一定的规律(升序或降序)组织起来。(注:我们这里的排序采用的都为升序)1.2-排序分类:常见的排序算法:插入排序a. 直接插......
  • HTML5+CSS3学习笔记第二天
    二、HTML第二天(列表、表格、表单)1.列表无序列表:每行前面多一个小点<ul><li>列表条目1</li><li>列表条目2</li><li>列表条目3</li></ul>有序列表:每行前面自动加1.2.3.的序号<ol><li>有序列表条目1</li><li>有序列表条......
  • HTML5+CSS3学习笔记第一天
    一、HTML初体验11.HTML定义:超文本标记语言超文本:链接标记:标签、带尖括号的文本2.标签语法双标签:成对出现,中间包裹内容单标签:只有开始标签eg:水平线hr、换行br<>放英文字母即标签名结束标签多一个/3.HTML基本骨架<html> <head> <title>网页标题</title> </head>......