gpt4 book ai didi

javascript - 如何为div内的每个元素设置边框颜色?

转载 作者:行者123 更新时间:2023-12-04 09:30:42 25 4
gpt4 key购买 nike

我一直在研究标记图像的代码。我能够插入标签,并为每个插入的标签创建一个小框,标签名将显示在里面。我想做的是,为每个创建的框设置不同的颜色。

var html = "<div class='inputtag'><i class='fa fa-eye' aria-hidden='true'></i><i class='fa fa-trash-alt' aria-hidden='true'></i><span>" + input + "</span><input type='hidden' name='tag_name[]' value='" + input + "'></div>";

$('.tags').append(html);

var theColors = []
document.querySelectorAll(".inputtag").forEach((el, idx) =>
theColors.push("#" + ((1 << 24) * Math.random() | 0).toString(16)); el.style.borderColor = theColors[idx]
)
.inputtag>i {
margin - right: 4 px;
}

.inputtag {
border - radius: 4 px;
border: 1 px solid skyblue;
color: #000;
padding: 2px 8px;
width: max-content;
text-align: center;
cursor: pointer;
margin: 4px 4px;
float: left;
}

在上面的 Javascript 代码中,我试图为 div 内的元素获取不同的边框颜色,但是在每个新条目之后颜色会不断变化。我附上了下面的图片以更好地解释它。
图 1:
enter image description here
在此图像 1 中,您可以看到具有两种不同颜色的元素。当我添加新元素时,这些颜色会发生变化。即,对于添加到 Div 中的每个元素,每个元素的边框颜色都在不断变化。
图 2:
enter image description here
图像 2 显示了元素边框颜色的变化。我想要的是为 Div 内的每个元素使用不同的固定颜色,这样它们就不会在添加新元素时改变颜色。
有人可以帮我解决这个问题。

最佳答案

尝试这个:

        var render = document.querySelector('#tags');
var btnAdd = document.querySelector('#btn-add');
var tags = [];

btnAdd.addEventListener('click', () => {
var nameTag = document.querySelector('#name-tag');
var color = ((1 << 24) * Math.random() | 0).toString(16);
render.innerHTML += `
<div class="tag" style="border-color: #${color};">
${nameTag.value}
</div>
`;
});
        .tag {
border-radius: 4px;
border: 2px solid skyblue;
color: #000;
padding: 2px 8px;
margin: 4px 4px;
float: left;
}
    <input type="text" id="name-tag" placeholder="name tag...">
<button id="btn-add">Add</button>
<hr>
<div id="tags">
</div>

关于javascript - 如何为div内的每个元素设置边框颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62867533/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com