我不知道鏈接是否正確。
我說說編碼是這樣的:CSS鏈接性能
html > body > div > ul > li > a{
/*css*/
}
我和我的一個朋友,誰告訴我,渲染的CSS這樣當編碼CSS是讓瀏覽器性能比較低的交談。
所以這是真的,或者我真的應該只聲明類/ ID的和指定他們?
我不知道鏈接是否正確。
我說說編碼是這樣的:CSS鏈接性能
html > body > div > ul > li > a{
/*css*/
}
我和我的一個朋友,誰告訴我,渲染的CSS這樣當編碼CSS是讓瀏覽器性能比較低的交談。
所以這是真的,或者我真的應該只聲明類/ ID的和指定他們?
如果你只想要某個元素內,向一個元素,你可以嘗試這樣的事:
#ullID li{ ... }
通過這樣做,您爲#ullID元素中的li
標籤的樣式。如果你想要去得更深,你可以做到這一點,像這樣:
#ullID li a{ ... }
我會說這將是更快的性能在違背明智的使用:
html > body > div > ul > li > a{ ... }
希望這有助於:)
在我看來,你應該使用最少的選擇規則。處理時間越長,規則越多。
所以是最好的做法是使用類和ID。
另外你上面給的例子,如果你正試圖將CSS應用到所有的標籤,將很好地工作只是
a {
/* css */
}
這只是一個例子。有時候我有非常大的css-es,而當我僅適用於某個類時,我感到有點困惑,然後我開始像這樣編寫代碼。但是讓我們說我在頁面中有3個ul-s,並且他們每個人都有不同的風格。設置ID-s並指定像這樣#ulID> li和#ulID> li> a是否好? –
,你必須以目標你應該只爲特定的你的元素。 使用id是可取的。
最終,雖然這種微觀優化是相當無關緊要的。唯一值得期待的,一旦你已經優化的非常一切其他(壓縮圖像,靜態內容服務,使用CSS精靈,減少資產等)
http://www.stevesouders.com/blog/2009/03/10/performance-impact-of-css-selectors/
+1鏈接到實際的測試數據,而不是像所有其他答案一樣瘋狂地猜測。 – RichieHindle
CSS是由瀏覽器從右讀左邊,這意味着在您的示例中,瀏覽器會查找所有<a>
,然後查找父代<li>
,直到它達到<html>
。
因此,對於性能而言,這種風格的寫作風格對性能不利。
下面是選擇優化的粗糙aproximation:
甲nd在討論SEO時,要記住這些事情。這並不意味着你必須忘記所有這些,只使用類和身份證。 事情是,當你說div #child ul li a img
瀏覽器第一次照顧和IMG和看起來,如果它有一個a
家長有一個li
家長等等。
你應該問他任何證據 – MarcinJuraszek
當範圍更多時,你會迭代許多dom元素。一個好的做法是使用最小範圍,例如按元素ID搜索。 – dinukadev
@約翰遜 - 是的!他可能是一個男人! ; o) – Paul