2014-09-19 47 views
4

我最近一直在清理別人做的雜亂的CSS模板。除此之外,還有很多未使用的類,重複的選擇器要合併等等。空的聲明塊是否有任何用途?

我不確定的一件事:空聲明塊。有10-20個選擇器沒有附加任何樣式信息。

片段1:

/* Thead */ 
thead th {padding: .5em .4em; text-align: left;} 
thead td {} 

/* Tbody */ 
tbody td {padding: .5em .4em;} 
tbody th {} 

tbody .alt td {} 
tbody .alt th {} 

/* Tfoot */ 
tfoot th {} 
tfoot td {} 

片段2:

#extras ul { 
    list-style: none; 
    margin: 0; 
} 

    #extras li {} 

難道這些空聲明任何作用?我的猜測是他們是佔位符,以防設計師想要回來添加一些東西。

如果我完全刪除這些語句,該網站看起來「很好」,但理想情況下,我會在我承諾之前有一個直接的答案。

搜索嘗試主要是討論:empty僞類。

MDN's CSS reference狀態下面,這並不完全回答這個問題:

一個聲明塊可能是空的,即包含空聲明。

這裏有一個目的,我失蹤了嗎?

+0

除了佔位符之外沒有任何用途。刪除它們。 – 2014-09-19 21:13:48

+0

任何一個空的聲明塊絕對不會做任何事,或者我必須檢查我所知道的關於CSS的所有內容! – LcSalazar 2014-09-19 21:14:13

+1

人們可以通過CSSOM API在技術上訪問這些塊並向它們添加聲明,但我猜想有不超過0.01%的Web應用程序會這樣做。 – 2014-09-19 21:18:38

回答

2

具有空聲明塊的規則對瀏覽器沒有任何作用。相反,他們會使頁面加載速度稍微慢一些。您可以刪除它們而不更改結果。

我在使用CSS時定期創建空白規則,但通常在頁面形成時將其刪除。即使在發佈代碼時,有時仍會留下一些空的規則。

在CSS中約有10-20個空白規則並不會帶來明顯的差異。它可能會在幾毫秒內減慢頁面的加載速度,因此本身無法衡量,但您應該儘可能保持代碼的清潔。在這裏和那裏削減毫秒加起來。

相關問題