2 回答
TA贡献1828条经验 获得超13个赞
如果您想使用querySelectorAll,就像您在第一个答案的评论中所说的那样(您的问题中不清楚),那么解决方案是依次使用两个querySelectorAlls 。
document.querySelectorAll('div.element').forEach(
el => el.querySelectorAll('h1, h2, p').forEach(
el => el.style.color = 'red'
)
);
.footer {
background-color: blue
}
<div id="1">
<div class="element">
<h1>Test 1</h1>
<span>Link to interesting <a href="https://google.com">site A</a></span>
</div>
</div>
<div id="2">
<div class="element">
<h2>Test 2</p>
<span>Link to interesting <a href="https://google.com">site B</a></span>
</div>
</div>
<div id="3">
<div class="element">
<h3>Dont color me red!</h3>
<p>Test 3</p>
<span>Link to interesting <a href="https://google.com">site C</a></span>
</div>
</div>
<div class="footer">
<h2>This is my footer</h2>
<p>Do not color this text red!</p>
</div>
div.element>h1, div.element>h2, div.element>p
但到那时,在样式表中使用可能会更直接。
TA贡献1868条经验 获得超4个赞
在 vanilla CSS 中,您可以选择元素内所需的项目<div>
,就像这样
.element h1, .element h2, .element p {}
如果你想要更简洁、更整洁的 CSS 代码,你可以随时查看 SASS。
在 SASS 中它看起来像这样:
.element { h1, h2, p { color: red } }
您可以在这里找到 SASS: https: //sass-lang.com/
JS 中的选择不会因为使用预处理器而改变。预处理器所做的就是允许您以某种方式编写 CSS,然后将其转换为普通 CSS 供浏览器读取。
因此,如果你想通过JS以最干净的方式选择.element h1,.element h2,.element p,我会给这些特定元素一个类,例如“red”,然后在JS中使用这个类来选择它们。
- 2 回答
- 0 关注
- 90 浏览
添加回答
举报