我目前正在爲一些CSS樣式創建一個庫(還有一些是由jQuery定義的,所以隨意使用JavaScript/jQuery作爲解決方案 - 我不認爲這是可能的以任何方式使用普通的CSS)。將CSS文件附加到元素和子元素
我有一些應該只應用於具有特定類的父元素(在示例中爲.style-container)的部分。
當然,這可以通過在每個CSS選擇器前添加類來實現。
這需要大量的數據需要傳遞,所以我想也許有可能應用CSS文件,它的內容只是針對特定元素,而不是整個文檔的兒童。
想象一下這樣的CSS(遠簡體):
h1 {
color: #f00;
border-bottom: 1px solid #000;
}
這個HTML文件(體內部分):
<div class="style-container">
<h1>This should be styled</h1>
</div>
<div>
<h1>This should be standard style</h1>
</div>
現在也許有一些JavaScript/jQuery的加載該文件只是所有與課堂上的元素和它的孩子。
注:
有可能出現通過JavaScript/jQuery的新元素還沒有去過那裏,我真的不希望再次加載整個風格,那麼,因爲這可能會佔用大量資源然後加載,以防內容變化非常快。
而且等待也不是一個選項,因爲那樣的話,元素在被等待的時候就不會被設置樣式。
編輯: 再次指出:我在尋找一個更好的選擇,標準的CSS孩子選擇,將工作是這樣的:
.style-container h1 {
color: #f00;
border-bottom: 1px solid #000;
}
我想這一點,因爲它使用了大量更多數據從服務器傳輸到客戶端。要理解這一點:我有我的代碼的一部分與選擇器和沒有最小化的形式。帶選擇器的人需要3698個字符,沒有選擇器的版本需要2538個字符。這是1160個字符的差異。或者,在kB中,我們有3.61kB - 2.47kB = 1.14kB的差異。這似乎很少,但它只是它將要使用的代碼的一小部分。我期待的代碼是十倍大。這相差11,4kB。在我看來,這對於移動設備來說是相當大的數量......
我認爲css是足夠快,如果你指定選擇器correclty。閱讀這裏:https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Writing_efficient_CSS – rst
是的,CSS是足夠快。但我更擔心傳輸的數據量,尤其是因爲移動設備。我希望它儘可能適合移動設備。 –