簡體   English   中英

將 CSS 規則應用於兩個其他元素之間的一組元素

[英]Apply CSS rule to a group of elements between two other elements

<div class="aaa">
  <blockquote>...</blockquote>
  <p>...</p>
  <div class="bbb">...</div>
  <div class="ccc">...</div>
</div>

有沒有辦法將display: none應用於aaabbb之間的所有內容? 也就是說,到<blockquote><p> (內容不限於blockquotep 。例如,它可以是<div><pre> 。)

您將需要兩條規則:

 .aaa > * { display:none; }.aaa >.bbb, .aaa >.bbb ~ * { display:block; }
 <div class="aaa"> <blockquote>block</blockquote> <p>ppp</p> <div class="bbb">bbb</div> <div class="ccc">ccc</div> </div>

如果您想使用 JavaScript(例如,以編程方式應用此更改),您可以獲取類為aaa的元素的所有子元素,然后迭代它們應用樣式,當您到達類為bbb的元素時停止。

let parent = document.querySelector('.aaa');

for (let child of parent.children) {
    if (child.classList.contains('bbb'))
        break;

    child.style.display = 'none';
}

 #xxx{ display:none; }
 <div class="aaa"> <div id='xxx'> <blockquote>.zzz..</blockquote> <p>.yyy..</p> </div> <div class="bbb">...</div> <div class="ccc">...</div> </div>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM