我有一個關於CSS文件的問題,它是在瀏覽器中應用的順序。 我們:申請訂單的CSS文件
- 瀏覽器(系統)CSS文件,
- 用戶CSS文件,
- 用戶CSS重要文件,
- 網站CSS文件,
- 網站CSS重要文件,
頁面加載時,一些CSS代碼根據順序或!重要的詞語替換其他代碼。我上面列出的訂單是正確的,所以網站CSS重要文件可以覆蓋所有以前的樣式?
我有一個關於CSS文件的問題,它是在瀏覽器中應用的順序。 我們:申請訂單的CSS文件
頁面加載時,一些CSS代碼根據順序或!重要的詞語替換其他代碼。我上面列出的訂單是正確的,所以網站CSS重要文件可以覆蓋所有以前的樣式?
CSS代碼不會替代其他CSS代碼,並且解析樣式表的順序不相關。實際上沒有應用順序,因爲所有適用的樣式表都被考慮在內。當幾個樣式表爲一個元素的屬性賦值時,衝突根據cascade rules解決。順序則是:
用戶代理報關(瀏覽器的默認樣式)
用戶正常聲明
作者(頁)正常聲明
作者(頁)重要聲明
用戶重要聲明
因此,作者(頁)!important
聲明勝過一切,但用戶!important
聲明。在Css 1中,順序是不同的,但在CSS 2和瀏覽器中按照現行規則進行了更改:如果用戶希望行使其權限,則用戶始終擁有最後一個字。
編號用戶CSS文件將在網站CSS文件後解析(否則用戶CSS文件沒有任何意義)。這並不意味着它會自動覆蓋網站的css文件中的所有內容,但正常CSS specificity rules仍然適用。
讓我們把紅色的所有段落爲例我的網站有規則:
website.css: p { color: red; }
但是,如果我實現用戶樣式表(如userContent.css在FireFox)說:
FireFox userContent.css: p { color: blue; }
文字顏色爲藍色。
如果我然後標記該網站的規則很重要:
website.css: p { color: red; !important }
顏色將再次紅了。
你想要什麼?你是否希望能夠使用'site CSS important file'中的樣式重載所有樣式?如果是,那麼順序是正確的。 –