国产成人a-国产成人99久久亚洲综合精品-国产成人99精品免费视频麻豆-国产成人99精品免-国产成人91一区二区三区-国产成人91亚洲精品无码观看

目錄
目錄X

以!important的CSS定義兼容不同瀏覽器

  CSS定義對于不同瀏覽器的兼容性問題一直比較困惑。不管是用div+CSS還是table來進行頁面設計,我對WEB重建的理解是:速度與兼容性。即要盡可能提高瀏覽者訪問頁面時瀏覽的速度、要使頁面能盡可能兼容不同來訪瀏覽器的瀏覽效果。所以近期的設計都是打開幾個不同的瀏覽器進行測試,如IE、GoSuRF Browser、Opera和Firefox瀏覽器。測試結果表明,IE和GoSuRF Browser對CSS的支持最好,Opera其次,Firefox要求最高。

  先看下面的效果:

  以下圖片是在IE瀏覽器、GoSuRF Browser瀏覽器和Opera瀏覽器中看到的效果:

  在Mozilla Firefox瀏覽器中看到的效果:

  其中在IE和GoSuRF Browser瀏覽器瀏覽時的效果基本沒差別,居中正常;Opera瀏覽器中對于這里居中效果也正常(但對于頁面其他地方就有些問題,這在后面再研究);在Mozilla Firefox瀏覽器中看到的效果就不同了,居中是對的,但是二邊都沒對齊,抓圖仔細查看了下,二邊多出了5個像素的寬度,并且里面的縮進量都有問題。

  先看看CSS中對于中間區域的定義:

#mainall {
width: 760px; height: 300px;
padding: 5px; margin: 0 auto;
background: #fff;
}

  可能是padding: 5px;這個縮進量Firefox不支持,先測試將“padding: 5px;”改成“padding: 0px;”,保存后瀏覽,二邊多出了5個像素的寬度就不見了。就是它了。在CSS中再加一句:“padding: 0px !important; ”:

#mainall {
width: 760px; height: 300px;
padding: 0px !important;
padding: 5px; margin: 0 auto;
background: #fff;
}
  !important的作用是提升指定樣式規則的應用優先權,但IE不支持的值,CSS中即使定義了IE也會忽略這它而選擇按后面的定義執行并顯示,而Opera和Firefox卻會按!important指出的規則優先顯示??聪聻g覽效果:

  首先二邊對齊的問題解決了。但是右側的div內容卻被擠到下面去了。很可能是寬度不夠的緣故。再看下左右二個div的定義:

/*===中部左側定義開始===*/
#mainbox {
padding:10px; float: left;
width: 495px;
background: #fff;
}
/*===中部右側定義開始===*/
#rightbox {
float: right;
padding: 5px;
width: 250px; height: 100%;
background: #F6F7F9;
}

  應該是這個狐貍(Firefox)將padding這個補丁邊距的縮進量,不但是只具有縮進效果,并且還讓瀏覽器解析成:整個box的寬度為width+padding了!暈哦,找到這個原因,解決起來方便些了:將整個box的寬度在Firefox中應該計算為(width-padding)。讓!important來做這個工作吧:

/*===中部左側定義開始===*/
#mainbox {
padding: 0px !important; /****兼容Firefox瀏覽器*****/
padding:10px; float: left;
width: 495px;
background: #fff;
}
/*===中部右側定義開始===*/
#rightbox {
float: right;
padding: 5px;
width: 250px; height: 100%;
background: #F6F7F9;
}

  再次瀏覽,終于左側上去了,哈哈,應該就是這個問題啦。但是問題又來了,右側怎么灰色的標題欄到邊界外面去了?

  再看CSS定義:

#rightbox dt {
padding: 3px !important; /****兼容Firefox瀏覽器*****/
padding: 3px; margin: 0px; border: 0px;
width: 100%;
font-weight: normal; font-family:宋體; font-size: 12px; color: #fff;
background: #A6A9AE; text-align: left;
}
#rightbox dd {
padding: 5px !important; /****兼容Firefox瀏覽器*****/
padding: 10px; margin: 0px; border: 0px;
text-align: left;
width: 100%;
font-weight: normal; font-family:宋體; font-size: 12px; line-height: 24px;
}
  
  這里設置了標題#rightbox dt的寬度為100%,測試一下,去掉這個定義就顯示正常了,用相同的手法處理下,加上個定義“width: !important;”,讓Firefox先認識這個定義而丟棄width: 100%的定義即可:
#rightbox dt {
padding: 3px !important; /****兼容Firefox瀏覽器*****/
padding: 3px; margin: 0px; border: 0px;
width: !important; /****兼容Firefox瀏覽器*****/
width: 100%;
font-weight: normal; font-family:宋體; font-size: 12px; color: #fff;
background: #A6A9AE; text-align: left;
}
#rightbox dd {
padding: 5px !important; /****兼容Firefox瀏覽器*****/
padding: 10px; margin: 0px; border: 0px;
text-align: left;
width: !important; /****兼容Firefox瀏覽器*****/
width: 100%;
font-weight: normal; font-family:宋體; font-size: 12px; line-height: 24px;
}

 瀏覽下效果,正常了!

    

調整前的效果         用width: !important后的效果

  查看Firefox的Iavascript控制臺,可看到以下一些提示,說明用CSS中用 !important提升指定樣式規則的應用優先權后,Opera和Firefox中會優先執行并丟棄后面相同的定義:

Firefox的Iavascript控制臺提示信息:
錯誤: 預期為 ’:’ 但卻得到 ’padding’。 聲明被丟棄。
源文件:  行:71
……
錯誤: 預期為 ’:’ 但卻得到 ’width’。 聲明被丟棄。
源文件: 行:212

【打印正文】 發布時間:2006-08-11 09:13:30 瀏覽次數: 作者:雅虎 來源:本站原創
×

用戶登錄

主站蜘蛛池模板: 97制片厂爱豆传媒视频| 国产福利萌白酱在线观看网站| japanesemom中文字幕| 亚洲国产精品无码专区在线观看| 欧美日韩国产高清视频| 久久亚洲国产精品一区二区| 国产日韩欧美综合| 国产a∨免费精品视频| 尤物99国产成人精品视频| 天天操天天视频免费看| 久久亚洲一区精品| 国产精品亚洲日韩欧美| 91呻吟丰满娇喘国产区| 三年片在线观看免费观看大全| 久久久精品久久久久久久久久久| 国产精品福利自产拍在线观看| 91成人区人妻精品一区二区在线| 日韩日b视频| 久久久久久精品一级毛片免费| 国产精品毛片av一区| 69精品人人人人| 日韩aⅴ人妻无码一区二区| 精品乱码8久久久久久日本| 丰满人妻一区二区三区无码a| 2024久热爱精品视频在线观看| 日韩人妻精品一区二区三| 精品无码久久久久久久久 | 丰满多毛少妇做爰视频| 亚洲熟妇无码一区二区三区| 日本人妖一区视频| 狠狠精品干练久久久无码中文字幕| 国产成人精品实拍在线| 一本久久精品一区二区 | 日韩精品无码一区二区三区视频| 精品日韩色国产在线观看| 丁香花成人论坛| 小13箩利洗澡无码自慰网站| 久久高清内射无套| 国产精品无码人妻系列AV| 51精品国产人成在线观看| 人妻无码久久久中文字幕|