在瀏覽器中的效果就是把dudo.org這個字符串顯示為紅色。那么我們使用Chrome瀏覽器中自帶的開發者工具看看瀏覽器是怎么來渲染的:

在右圖我們看到從HTML標簽到div#d1最后到div#d5都被賦予了一個color:red的屬性。也就是說空白元素也有了屬性。可能有人會說,這很正常啊,因為你使用的是通配符星號(*)嘛,星號(*)自然通配所有的標簽了。但是你應該仔細看前面的“Inherited frome”,它不僅僅是通過星號(*)來指定,他還會一層一層地繼承下去。而且星號(*)的優先級是很高的,他的作用域很大。所以,你的頁面層次越復雜,重復繼承和渲染的次數就越多。
這會有什么樣的后果呢?影響性能!不過,這不是296、386的時代,現在的計算機對于點東西來說是簡直是小菜,如果你不是那么在乎完全可以忽略。不過對于要求苛刻的設計來著,這樣的東西也是絕對不允許出現的。
那么星號(*)通配符是不是就不能用,或者越少用越好呢?當然不是!不過要堅持這樣的原則:不要在在深層次的頁面結構中使用它;不要在頁面的根節點使用它;不要在距離目標節點較遠的節點上使用它。最好在父級元素中使用。這樣效果和性能可以兼得。
新聞熱點
疑難解答