js设置css变量控制页面一行展示指定个数的元素

news/2024/5/19 20:27:26 标签: javascript, css, 开发语言, flex, 前端

前置知识:
CSS变量之var()函数的应用——动态修改样式 & root的使用
flex相关知识


场景: 动态设置给父元素内子元素设置每行排列几个
在这里插入图片描述

通过 document.body.style.setProperty('--itemNum', 5)设置样式变量,然后通过给父元素设置display: flex;,子元素设置flex: 0 0 calc(90% / var(--itemNum))动态控制子元素的宽度
在这里插入图片描述

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<style>css">
  .content {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    padding-bottom: 50px;
    padding-left: 40px;
    text-align: center;
    border:1px solid black;
  }

  .child {
    width: 100px;
    height: 100px;
    box-sizing: border-box;
    flex: 0 0 calc(90% / var(--itemNum));
    text-align: center;
    background-color: #d8ffff;
    border-radius: 47px;
    margin: 20px 0;
    margin-right:calc(10% / var(--itemNum));
  }
</style>

<body>
  <div class="content">
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>
    <div class="child"></div>

  </div>
</body>
<script>javascript">
    document.body.style.setProperty('--itemNum', 5)

</script>
</html>

http://www.niftyadmin.cn/n/4935867.html

相关文章

从零开始学Python(三)函数与lambda表达式

&#x1f973;&#x1f973;Welcome Huihuis Code World ! !&#x1f973;&#x1f973; 接下来看看由辉辉所写的关于Python的相关操作吧 目录 &#x1f973;&#x1f973;Welcome Huihuis Code World ! !&#x1f973;&#x1f973; 一.函数 1.函数与方法的区别 2.函数的定…

项目配置中心介绍

目录 什么是配置中心 为什么要有配置中心 配置中心的做法&#xff08;读取和通知&#xff09; 配置中心优点: 常用的配置中心中间件 什么是配置中心 配置中心就是用来管理项目当中所有配置的系统&#xff0c;也是微服务系统当中不可或缺的一部分。项目的配置文件不放到本地…

Linux-C++开发项目:基于主从Reactor模式的高性能并发服务器

目录 1.项目介绍2.1项目部署2.2安装版本较高的编译器 2.项目开发过程2.1网络库模块开发2.1.1简单日志宏的实现2.1.2Buffer模块实现2.1.3Socket模块实现2.1.4Channel模块实现2.1.5Poller模块实现2.1.6TimerWheel模块实现2.1.7EventLoop模块实现2.1.8整合测试12.1.9LoopThread模块…

学点Selenium玩点新鲜~,让分布式测试有更多玩法

前 言 我们都知道 Selenium 是一款在 Web 应用测试领域使用的自动化测试工具&#xff0c;而 Selenium Grid 是 Selenium 中的一大组件&#xff0c;通过它能够实现分布式测试&#xff0c;能够帮助团队简单快速在不同的环境中测试他们的 Web 应用。 分布式执行测试其实并不是一…

Python Opencv实践 - 图像旋转

import cv2 as cv import numpy as np import matplotlib.pyplot as pltimg cv.imread("../SampleImages/pomeranian.png", cv.IMREAD_COLOR)#图像旋转 #Opencv中的旋转&#xff0c;首先通过cv.getRotationMatrix2D获得旋转矩阵 #cv.getRotationMatrix2D(center,ang…

学生管理系统(C语言版)

#include <stdio.h> #include <string.h>#define MAX_STUDENTS 100struct Student {int id;char name[50];int age; };struct Student students[MAX_STUDENTS]; int numStudents 0;void addStudent() {if (numStudents > MAX_STUDENTS) {printf("学生信息…

前端使用ReadableStream.getReader来处理流式渲染

文章目录 前言一、纯css二、vue-typed-js插件1.安装2.注册3.使用总结 三、ReadableStream1.ReadableStream是什么&#xff1f;2.ReadableStream做什么&#xff1f;3.ReadableStream怎么用 前言 需求&#xff1a;让接口返回的文章根据请求一段一段的渲染&#xff0c;同时可以点击…

【二分+贪心】CF1665 C

Problem - C - Codeforces 题意&#xff1a; 思路&#xff1a; 一开始想太简单wa6了 只想到先感染大的分量&#xff0c;然后最后把最大的分量剩下的染色 但是可能会有别的分量更大&#xff08;因为最后给最大的染色之后可能不再是最大的&#xff09; 可以用堆维护&#xf…