You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何优化CSS避免重复代码?批量修改带独立ID输入框样式的方法

优化重复内联样式的几种方案

嘿,手动改5次内联样式确实太冗余了,完全没必要!给你两个高效的解决方案,选适合你的就行:

方案一:用CSS类统一控制(推荐)

样式本来就该和HTML结构分离,把重复的样式规则写到CSS里,以后改宽度只要改一次CSS就搞定所有输入框:

修改后的HTML

去掉每个input里的width:8%; text-align:center内联样式,保留其他必要属性:

<input class="box" type="text" id="a" value="A" readonly="true"/>
<input class="box" type="text" id="b" value="B" readonly="true"/>
<input class="box" type="text" id="c" value="C" readonly="true"/>
<input class="box" type="text" id="d" value="D" readonly="true"/>
<input class="box" type="text" id="e" value="E" readonly="true"/>

对应的CSS

<style>标签或者外部样式表里定义.box类的样式:

.box {
  width: 6%; /* 这里改一次就所有输入框生效 */
  text-align: center;
}

以后要调整宽度,直接改CSS里的width值就行,完全不用碰HTML,这也是前端开发的最佳实践哦。

方案二:用JavaScript批量修改(适合动态场景)

如果因为某些限制不能改CSS,比如样式是动态生成的,那可以用JS批量选中所有.box元素,循环修改它们的宽度:

// 选中所有带box类的输入框
const inputBoxes = document.querySelectorAll('.box');
// 遍历修改宽度
inputBoxes.forEach(box => {
  box.style.width = '6%';
});

这段代码会一次性把所有目标输入框的宽度改成6%,不用一个个操作。

内容的提问来源于stack exchange,提问作者Una Koala

火山引擎 最新活动