【发布时间】:2020-07-08 08:14:18
【问题描述】:
使用 SCSS,是否可以告诉子元素只有在与其父元素共享(前缀)类时才接收某种样式,不知道类的具体名称,只知道前缀?
我想避免编写特定规则来告诉每个具有特定班级的孩子在父母拥有相同的特定班级时应该如何表现。相反,我想创建一个规则,一般规定:»只要父母和孩子共享同一个班级,孩子就会收到这种风格:......«
(前缀旨在帮助区分需要由孩子匹配的类与其他处理孩子外观其他方面的类。)
我正在谈论的 Javascript 等价物:
const parent = document.getElementById("parent");
const children = parent.querySelectorAll("child");
const prefix = "myClassPrefix_";
// Get prefixed class from parent
let prefixedClass_parent = Array.prototype.filter.call(parent.classList, function (className) {
if(className.includes(prefix)) {
return className
}
});
// Check if child shares class
for (let i = 0; i < children.length; i++) {
// Apply styles to child with matching class
if(children[i].classList.contains(prefixedClass_parent)) {
children[i].style.opacity = 1;
}
}
【问题讨论】:
标签: sass