什麼時候該用 important

2022-07-13 18:12:11 字數 1275 閱讀 6564

在css裡面使用!important通常代表你這個人要麼懶惰,要麼自私或者是過於自信。

首先讓那些不知道的人看一下,!important是這麼一回事:

1

css2

p #thing

5html

6will be red.

這個段落將會是red的,儘管id選擇器的優先順序更高。但是!important

規則會覆蓋掉它原本的樣子

如果css濫用!important

的話將會變成非常難維護。造成這種不幸的一般都是這種步驟:

為啥我的css檔案不起作用啦!?

(接著就用絕招:!important)

ok,可以啦!

然後下乙個同事就會來加上一些新的樣式,他會試著去修改一些css樣式,但是他每沒有收到預想中的效果。最終他發現了是

!important搞的鬼。然後他就會去刪掉這些!important,接著再加上他自己的樣式使得效果體現出來。但是,禍不單行,按下葫蘆浮起瓢,這邊搞定了,那邊會因為這次修改而樣式錯了,就這樣陷入了惡性迴圈。

那麼什麼時候使用

!important比較好呢?在我看來,在有實際用途的類裡使用是比較合適的。

比如有一批按鈕。現在假設下你的網頁上有乙個.button類。不論放在什麼元素上面,你都想元素看起來像乙個按鈕:特定的字型,圓角,特定的背景顏色與邊框。所以,你這麼寫:

css
1

.button

7html

8do thing

如果元素上面有乙個更高階的選擇器,有可能會出現下例的問題:

html
1

2text text blah do thing

3#content a

現在可以看到按鈕會變成虛線的邊框,這個不是你所希望的。可以在看一下效果fiddle.

我不認為這種是css本身的問題。但這裡我們把乙個按鈕的樣子弄糟糕了。

把你的按鈕類變得不容易被覆蓋,使用!important是乙個好方法。

css
1

.button

其他補充?

什麼時候該用MVC,什麼時候該用Webform?

看看微軟的解釋 何時建立 mvc 應用程式 您必須仔細考慮是使 用 asp.net mvc 框架還是使用 asp.net web 窗體模型來實現 web 應用程式。mvc 框架未取代 web 窗體模型 您可以 對 web 應用程式使用任一框架。如果您具有現有的基於 web 窗體的應用程式,則這些應用...

什麼時候該用裸機?什麼時候該用RTOS?

今天在某qq群裡看到有人討論這個問題,正巧我也仔細想了一下。以下是我對這個問題的看法 1.rtos的rt這詞就是實時的意思,網上很多歸納總結都說rtos要用在實時性很高的專案,怎麼才算是實時性高呢?假設我們裸機有下面這個段程式 int main 假設每個函式的處理時間,不考慮中斷,執行一輪迴圈的總共...

什麼時候該用get請求什麼時候該用post請求

引自 get和post兩種方法都是將資料送到伺服器,但你該用哪一種呢?http標準包含這兩種方法是為了達到不同的目的。post用於建立資源,資源的內容會被編入http請示的內容中。例如,處理訂貨表單 在資料庫中加入新資料行等。當請求無 時 如進行搜尋 便可使用get方法 當請求有 時 如新增資料行 ...