[問題] CSS hack !important的用法

看板Web_Design作者 (橘子汁)時間15年前 (2010/10/18 22:32), 編輯推噓0(0014)
留言14則, 4人參與, 最新討論串1/3 (看更多)
大家好,又來問問題了Orz 我想要確認一下把CSS的屬性提高優先的「!important」的用法 因為想要利用他區別不同的瀏覽器 雖然查到他是「IE6不會讀取這一行,會直接往下一行讀取」 可是我發現如果我是這麼寫的 .style{overflow:hidden!important;} IE6還是會執行overflow:hidden 但如果我用 .style{overflow:hidden!important; overflow:none;} 他就會執行overflow:none; 可是這樣很奇怪 這樣並不是「IE6不會讀取這一行,會直接往下一行讀取」, 而是「FF等瀏覽器優先讀取overflow:hidden!important;」 請問他的用法和原理是什麼呢?我有點被搞迷糊了Orz 附註:雖然說overflow:hidden在IE6應該是不能被內部的浮動DIV展開,不過這次用了 CSS REST以後似乎就可以了... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.104.136.71 ※ 編輯: oj113068 來自: 59.104.136.71 (10/18 22:33)

10/18 22:36, , 1F
IE 6不認識 !important,所以重複定義樣式,後面會蓋掉前面
10/18 22:36, 1F

10/18 22:41, , 2F
可是這樣的話,如果我後面沒定,他不會用預設值嗎?
10/18 22:41, 2F

10/18 22:42, , 3F
而且我沒有定後面的樣式,他還是有執行前面的耶~@ @
10/18 22:42, 3F

10/18 22:43, , 4F
不會~因為就沒定義了~哪來的預設值!?
10/18 22:43, 4F

10/18 22:45, , 5F
我的意思是,他應該會等於沒有這個屬性吧~@ @a
10/18 22:45, 5F
這樣說好了 我以為我如果用 .style{overflow:hidden!important;} 對IE6來說他應該是 .style{} 但是他卻執行出 .style{overflow:hidden;} ※ 編輯: oj113068 來自: 59.104.136.71 (10/18 22:46)

10/18 22:58, , 6F
ie6 是認識 important的 .
10/18 22:58, 6F

10/18 22:58, , 7F
他只是如果同一個樣式定義下重複出現,後者還是會蓋掉。
10/18 22:58, 7F

10/18 23:00, , 8F
但是如果出了那個定義區塊, important 還是有作用的。
10/18 23:00, 8F
^^^^^^^^^^^^^^^^不好意思,我有點不懂, 是指繼承嗎?

10/18 23:00, , 9F
說 ie6 不認識 important 其實是個比較精簡的說法,正確來講
10/18 23:00, 9F

10/18 23:00, , 10F
是行為不一致。
10/18 23:00, 10F

10/18 23:00, , 11F
那如果我把有!important的那行寫後面,他還是會執行
10/18 23:00, 11F

10/18 23:00, , 12F
出來?
10/18 23:00, 12F
※ 編輯: oj113068 來自: 59.104.136.71 (10/18 23:01) ※ 編輯: oj113068 來自: 59.104.136.71 (10/18 23:02)

10/18 23:15, , 13F
看我回的範例吧。
10/18 23:15, 13F

10/18 23:19, , 14F
我看到了!!謝謝T大~^^
10/18 23:19, 14F
文章代碼(AID): #1Cl5fywm (Web_Design)
文章代碼(AID): #1Cl5fywm (Web_Design)