2008-03-20

【程式】CSS : 在FireFox與IE瀏覽下不同的呈現問題

挺好用的,以下內容來自【狗貓的家】

 最近在弄其他的CSS樣式的版型設計,搞了半天快被CSS氣昏,因為用FireFox看很正常,結果用IE去看就差得十萬八千里,怎麼搞就是沒有一個兩邊看起來都正常的CSS設定,最後只好網路找答案,還好有一種解法,就是在CSS裡面分開判斷,如果是IE瀏覽器時,就用另外的CSS定義,這樣就可以做到!

下面是我遇到的案例

#banner{ /* for F.F */
  width: 80%;
  margin: 0px 5px 0px 5px;
  padding: 0px;
  background-position: 50px 0px;    
  background-image: url(圖片網址);
  background-repeat: no-repeat;
  height: 565px;
}
*html #banner{height: 400px;}   /* for IE 6.0以前版本  */
*+html #banner{height: 400px;} /* for IE 7.0 */

就是說因為針對IE瀏覽器,CSS裡面有特別的定義僅對IE6.0以前有效的,那就是加上*html,所以
*html #banner{height: 400px;} /* for IE 6.0以前版本 */
這個就是定義在IE瀏覽器為6.0之前的版本時,Banner檔頭高度設為400pixel。(原本的CSS是設定高度565pixel,F.F顯示正常下)

另外針對IE7.0的CSS"特碼",那就是加上*+html,所以
*+html #banner{height: 400px;} /* for IE 7.0版本 */
這個就是定義在IE瀏覽器為7.0的版本時,Banner檔頭高度設為400pixel。

以上就是當沒有辦法克服寫一套CSS讓不同瀏覽器共用時的最後手段!跟大家分享。


另外發現一種寫法

background : orange;        /* FireFox */
*background : green !important;     /* IE7 */
*background : blue;        /* IE6 */

 

 

0 comments:

張貼留言