2020年3月13日 星期五

CSS的大於(>)、加號(+)、波浪符(~)

原文章出處

大於(>)就是選取底下直接的子元素。
以大於符號(.box > p)和空格(.box p)來做比較,先看以下例子:

CSS
使用空格的情況 影響底下的所有元素
.box p{ font-size:20px; color:#216AAD;}

使用大於符號的情況下
.box > p{font-size:20px; color: #216AAD; }
由上可知.box p會影響到box這個div底下所有的p元素,而因為「>」只會影響到直接的子元素,所以例子中box底下直接接觸到的p元素只有001跟004,所以只有這兩者會改變。

加號符號(+)則是會影響到後方同層級第一個元素
範例:
html

CSS
div + p{ font-size:20px; color:#216AAD;}
由於跟div同層級又直接位於div後方的只有003,所以只有003改變。

而取代符號(~)是影響到後方同層級全部元素,因此除了003以外004也會改變。
div ~ p{ font-size:20px; color:#216AAD;}

雖然只是CSS撰寫上的小技巧,但是若能夠善加使用這些符號的話,將可以很好地規避每個CSS之間的影響,想必將更有利於撰寫CSS和減少class的數量唷!


沒有留言:

張貼留言