2017-03-04 73 views
2

假設我在頁面2000元素上。我想從自定義模塊注入此頁面元素(橫幅)。這個模塊的css文件有300多個css選擇器,每個選擇器都需要有唯一的動態前綴,以避免與同一頁面內的其他模塊發生衝突。我不能用1個獨特的ID選擇,因爲更多的橫幅可以被加載,所以我需要使用這樣的事情:CSS正則表達式id選擇器vs類選擇器的性能

<div id="company_banner14"></div> 
<div id="company_banner15"></div> 
div[id^='company_banner']{ 

} 

<div id="company_banner14" class="company_banner"></div> 
<div id="company_banner15" class="company_banner"></div> 
.company_banner{ 

} 

什麼是從性能視圖更好嗎?正在使用正則表達式選擇器壞習慣,300個正則表達式選擇器會產生任何可見的性能影響?

+0

好問題,我也對此感興趣。 – g5wx

+1

如果您不打算使用類選擇器,那麼擁有class屬性有什麼意義?尤其是當你在演奏時。它似乎...奇怪。 – BoltClock

+0

你說得對,這是我的錯,我修改了這個問題。 – user1324762

回答

-1

看完你需要的是爲所有元素定製一個CSS。這個查詢應該記住一些要點。

  1. 使用內聯CSS-我認爲,內聯CSS是最好的解決方案,如果你不使用長CSS的一個元素。如果您的循環元素太多,它會將非常有價值的代碼保存到您的頁面中。例如,<div id="company_banner15" class="company_banner" style="Width:x; height:y;"></div>

  2. 使用CSS類-這是內聯CSS的替代方法,但不是內聯CSS的代碼保存方式。如果您對所有元素使用相同類型的樣式,則準確無誤,如果您在循環中使用不同類型的樣式。

希望這些建議會引導你。感謝和歡呼。

+0

將會有300個不同的選擇器,因爲每個div都會有更多的元素。對300多個元素使用內聯css將不會好。問題是,如果最好使用類選擇器或ID正則表達式選擇器來處理這300個元素。裏面的每個元素都需要定義父親選擇器以避免任何衝突。 – user1324762