- 编辑**请检查答案,使用javascript的目的是不好的。我会离开这个问题,因为它可能会纠正别人太多。
我的目标是每个. ulInCollapseli都应该被独立计算。如果我给不同的类(或id)命名,比如.ulInCollapse1.ulInCollapse2等等,我确实实现了我的目标,但是我知道这不是正确的方式。我还修改了我的js代码以进行迭代;
const ulInCollapse = document.querySelectorAll(".ulInCollapse");
console.log(ulInCollapse)
ulInCollapse.forEach(function (ulInCollapse) {
var ulInCollapseLiCount = ulInCollapse.length;
var ulInCollapseLiCountChild = document.querySelector(".ulInCollapse li:last-child");
if (ulInCollapseLiCount % 2 != 0) {
ulInCollapseLiCountChild.style.paddingTop = "15px";
} else {
ulInCollapseLiCountChild.style.paddingTop = "0px";
}});
我不知道该怎么办,我希望我能把问题解释清楚。
x一个一个一个一个x一个一个二个一个x一个一个三个一个
1条答案
按热度按时间wwwo4jvm1#
也许你的意思是如何通过javascript正确设置文档中每个列表的最后一个列表项的填充。
这应该可以达到目的,但我不确定这是不是达到目的的最佳策略,我的意思是,使用不同样式的不同方法会比设置填充的方式更优雅。
我只处理了代码的javascript部分,在css规则中,我添加了一个红色的左边框来查看选择器何时真正匹配,并为每个列表项添加了一个轮廓,以便很明显应用了正确的填充。
这是一个更好的解决Flex容器中元素样式的方法。在容器中,我使用
gap
来选择元素之间的距离,并指定margin: 10em 0
来设置宏兄弟之间的间距。使用填充来分隔项不是一个好主意,因为填充是用来分隔内容*内部而不是外部。仅在容器上执行此操作就足以正确设置其项的布局: