iT邦幫忙

2024 iThome 鐵人賽

DAY 12
0

通用兄弟選擇器(Subsequent-sibling Combinator)用於選擇指定元素之後的所有符合條件的兄弟元素。

接著上次的家族故事,家裡的大哥、二姊、三妹和四弟這次又登場了。這回,二姊出去遛狗時順便買了些小蛋糕。不過,因為錢不夠,她只能分給弟妹們吃。於是,二姊之後的所有手足——三妹和四弟,這次都能一起享用美味的小蛋糕啦!不過可憐的大哥,只能看著大家吃啦~

# 基本用法

語法

選擇器1 ~ 選擇器2 {
	屬性名: 屬性值;
}
  • 選擇器1 是要選中的基準元素。
  • 選擇器2 是相鄰於 選擇器1 後面所有符合條件的兄弟元素。

範例

選中 .lala 類別後面的所有 <p> 元素

<p>Lala 的哥哥</p>
<p>Lala 的姊姊</p>
<p class="lala">Lala</p>
<p>Lala 的大妹</p>
<p>Lala 的小弟</p>
<p>Lala 的小妹</p>
.lala ~ p {
	color: red;
}

在此範例中,接在 .lala 類別之後的 <p> 都會變成紅色。
Subsequent-sibling Combinator

# 實務應用:

假設有一個文章結構,並且希望在標題下方的所有段落文字中高亮顯示後續的所有段落元素:

<article>
  <h1>Lala Code</h1>
  <p>實地掌握RWD - 12小時新手實戰班</p>
  <p>如何用CSS控制移動端可視區域?使用lvh, svh, dvh單位優化網站</p>
  <p>用 CSS 打造酷炫的變形蟲效果-CSS教學</p>
  <p>clip-path製作box-shadow陰影無效!?你應該這樣做!</p>
  <div>
    <a href="/">上一頁</a>
    <a href="/">下一頁</a>
  </div>
</article>
h1 ~ p {
  background-color: #f0f0f0;
  padding: 10px;
}

這樣,所有位於 h1 標題之後的 <p> 元素都會被選中,並且背景顏色將被設置為灰色,而其他的 <div><a> 元素則不受影響。

範例:[CODEPEN]


# 總結

通用兄弟選擇器使用 ~ 符號可以選取基準元素之後的所有符合條件的兄弟元素。
到目前為止,我們學習了複合選擇器的交集選擇器、選擇器列表、後代選擇器、子代選擇器、相鄰兄弟選擇器、通用兄弟選擇器,複合選擇器到本篇告一段落,明天開始會開始介紹虛擬類別選擇器囉!


上一篇
相鄰兄弟選擇器-兄弟情深,只挑最近的!
系列文
你的優先選擇是什麼?從 CSS 選擇器到優先級,深入解析與實用技巧12
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言