隨筆 - 28, 文章 - 0, 評論 - 3, 引用 - 0
          數據加載中……

          淺淡!important對CSS的重要性(轉)

          CSS中的!important是一個非常重要的屬性,有時候發揮著非常大的作用,52CSS.com這方面的知識并不是非常多,我們看下面的文章,對它作比較感觀的了解。
            前幾天寫一些CSS代碼的時候又難為我了,因為那個該死的IE6對CSS的支持是如此的差勁,以前我還沒注意過,因為做的東西基本都是基于IE的,可是我這次為博客寫的CSS要支持不止IE一個瀏覽器,可恨的是我裝的Windows 7,這里面自帶的是IE8瀏覽器,我自認為已經沒有問題了,可是打開IE6,仍然出現錯位,于是我決定看看IE6到底是什么情況。
            我把所有的CSS塊兒全部使用邊框包起來,結果看到在IE中兩個div之間的距離明顯要寬于其他瀏覽器,比如你寫一個div的margin屬性為20px,那么在IE中就好像是40px一樣,這也就是為什么本來精度計算的剛剛好,在IE下卻偏偏錯位的原因。
            后來我看到了!important這個屬性,這個屬性其實也是css規范中的,結果IE6愣是不支持,也正因為它不支持,才讓很多的CSSer們找到了解決的方法。一般來講,在css中,如果在同一個css塊中寫下兩個同樣的屬性,那么其實是按照最下面的來執行的,比如說:

           Example Source Code [www.52css.com]
          .home{
              margin-left:20px;
              margin-left:40px;
          }

            那么在執行的時候其實是按照40px來執行的,!important的出現就是為了讓用戶自己設置被執行語句的優先級。如果把上面的語句改為:

           Example Source Code [www.52css.com]
          .home{
              margin-left:20px!important;
              margin-left:40px;
          }

            那么在火狐、google瀏覽器以及IE7以上版本下將會按照20px來執行,而在IE6下卻仍然按照40px來執行,因為IE6并不支持!important規范,我們就可以按照這個規則來滿足IE6的設計需要,什么時候發現IE6和其他瀏覽器顯示效果不同,那么就設置兩個,在上面的一個加入!important標記,而下面的一句則不需要添加,這樣IE6就按照下面的來執行了。資深的CSSer說:如今的CSS處處!important。這可都是天殺的IE6惹的禍,大家說IE6就是一坨代謝產物一點也不為過。
            

          posted on 2010-03-11 15:14 Angle Wang 閱讀(221) 評論(0)  編輯  收藏 所屬分類: CSS

          主站蜘蛛池模板: 昌平区| 延庆县| 商都县| 芮城县| 宁阳县| 宁津县| 晋中市| 祥云县| 嘉祥县| 巴彦淖尔市| 成都市| 芜湖市| 石门县| 湟源县| 临海市| 陆丰市| 元氏县| 洛宁县| 县级市| 南部县| 得荣县| 兴义市| 崇阳县| 虹口区| 桃园市| 边坝县| 越西县| 太谷县| 西藏| 韶山市| 晋中市| 崇左市| 渝北区| 朝阳县| 灵川县| 昭通市| 阿巴嘎旗| 岢岚县| 娄底市| 汉源县| 伊通|