javascript - 如何使用 css 显示网格使我的列号动态化?
问题描述
我目前正在使用 cssdisplay: grid;
并grid-template-columns: auto auto auto auto auto auto auto auto auto auto;
显示如图所示的布局。我的问题是如何使我的专栏动态化。目前,我通过放置 10 来对其进行硬编码,auto
这指的是 10 列,但我的表列是动态的。有些有 8 列。我已经在我的 Javascript/Jquery 中计算了我的动态列号。我没有像 sass 这样的东西。我需要它来完成这项工作吗?
解决方案
1) 通过 JavaScript 更改列数
const cols = 10;
object.style.gridTemplateColumns=`repeat(${cols},auto)`;
2) 更改 PHP 中的列数
<?php $cols = 10; ?>
...
<div class="grid" style="--cols: <?php echo $cols; ?>;">...</div>
和下面的CSS代码
.grid {
display: grid;
grid-template-columns: repeat(var(--cols), 1fr);
}
推荐阅读
- excel - VBA:如何使用 vbProperCase 将第一个字母大写但保持其他所有字母不变?
- django - 当我要从购物车中删除产品时,我没有得到任何回应?
- excel - 对象变量或块变量未设置问题
- asp.net-mvc - 如何在 Visual Studio 2017 或 2019 中断开项目解决方案与 TFS 的连接?
- markdown - 以纯文本形式获取降价电子邮件
- python - 为什么我的自我实例没有在方法中传递
- java - 无法在 Netbeans 8.2 JDK8u231 中创建 Maven 项目(Web 应用程序)
- bash - 在不退出脚本的情况下中断循环(bash)
- mysql - 如何优化 prestashop 类别随机获取产品
- laravel - 我在 laravel 中读取 excel 文件时遇到问题