css獲取除第一個之外的子元素


在前端頁面開發中,需要使用css來選擇除了第一個之外的子元素,例如希望每個span之間能間隔一定的距離,單不能給每個span設置margin-left,這樣會導致第一個span的前面有間距,影響排版。下面就來講解實現css獲取除第一個之外的子元素的多種方法。

 

效果如下:

設計塢https://www.wode007.com/sites/73738.html

基本結構如下:

<style> .dom div{ float: left; height: 150px; line-height: 150px; width: 150px; margin: 20px; background: #ccc; text-align: center; color:#fff; } </style> <div class="dom"> <div>1</div> <div>2</div> <div>3</div> </div>

 

方法1:使用偽類選擇器:not  

<style> .dom div:not(:first-child){ background:red; } </style>

說明:

:not(selector) 選擇器匹配非指定元素/選擇器的每個元素。  

:first-child 選擇器用於選取屬於其父元素的首個子元素的指定選擇器。 

 

方法2:使用nth-of-type或者nth-child 

<style> .dom div:nth-of-type(n+2){ background:red; } </style>

或者:

<style> .dom div:nth-child(n+2){ background:red; } </style>

說明:

n是從0開始的,那么n+2自然就是從第2個元素開始了,同理如果選中單數元素那么就是2n+1,如果是想選中雙數元素,那么就應該寫成2n+2;具體情況可以根據項目情況使用。 

 

方法3:巧妙使用+或者~兄弟選擇符  

<style> .dom div+div{ background:red; } </style>

或者:

<style> .dom div~div{ background:red; } </style>

說明:

+ 選擇器:如果需要選擇緊接在另一個元素后的元素,而且二者有相同的父元素,可以使用相鄰兄弟選擇器。

~ 選擇器 :作用是查找某一個指定元素的后面的所有兄弟結點。  

由於都是div元素,第一個元素沒有兄弟元素,所以就能獲取除第一個之外的子元素。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM