国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

CSS瀏覽器兼容問題集-第四部分

2019-11-14 16:46:58
字體:
供稿:網(wǎng)友

12.Firefox下如何使連續(xù)長字段自動換行

眾所周知IE中直接使用 Word-wrap:break-word 就可以了, FF中我們使用JS插入
的方法來解決

<style type="text/CSS">
<!--
div {
    width:300px;
    word-wrap:break-word;
    border:1px solid red;
}
-->
</style>

<div id="ff">aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</div>

<scrīpt type="text/javascrīpt">
/* <![CDATA[ */
function toBreakWord(el, intLen){
    var ōbj=document.getElementById(el);
    var strContent=obj.innerHTML; 
    var strTemp="";
    while(strContent.length>intLen){
        strTemp+=strContent.substr(0,intLen)+"&#10;"; 
        strContent=strContent.substr(intLen,strContent.length); 
    }
    strTemp+="&#10;"+strContent;
    obj.innerHTML=strTemp;
}
if(document.getElementById  &&  !document.all)  toBreakWord("ff", 37);
/* ]]> */
</scrīpt>

13.為什么IE6下容器的寬度和FF解釋不同呢

<?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<style type="text/css">
<!--
div {
    cursor:pointer;
    width:200px;
    height:200px;
    border:10px solid red
    }
-->
</style>
<div ōnclick="alert(this.offsetWidth)">讓FireFox與IE兼容</div> 

問題的差別在于容器的整體寬度有沒有將邊框(border)的寬度算在其內(nèi),這里IE6解釋為200PX ,而FF則解釋為220PX,那究竟是怎么導(dǎo)致的問題呢?大家把容器頂部的xml去掉就會發(fā)現(xiàn)原來問題出在這,頂部的申明觸發(fā)了IE的qurks mode,關(guān)于qurks mode、standards mode的相關(guān)知識,請參考:http://www.microsoft.com/china/msdn/library/webservices/asp.net/
ASPNETusStan.mspx?mfr=true 
  

IE6,IE7,FF  

IE7.0出來了,對CSS的支持又有新問題。瀏覽器多了,網(wǎng)Bpx; /*For IE7 & IE6*/   
_height:20px; /*For IE6*/   

注意順序。   

這樣也屬于CSS HACK,不過沒有上面這樣簡潔。   
#example { color: #333; } /* Moz */   
* html #example { color: #666; } /* IE6 */   
*+html #example { color: #999; } /* IE7 */   


第二種,是使用IE專用的條件注釋   

<!--其他瀏覽器 -->   
<link rel="stylesheet" type="text/css" href="css.css" />   

<!--[if IE 7]>   
<!-- 適合于IE7 -->   
<link rel="stylesheet" type="text/css" href="ie7.css" />   
<![endif]-->   

<!--[if lte IE 6]>   
<!-- 適合于IE6及一下 -->   
<link rel="stylesheet" type="text/css" href="ie.css" />   
<![endif]-->   

第三種,css filter的辦法,以下為經(jīng)典從國外網(wǎng)站翻譯過來的。.   

新建一個css樣式如下:   
#item {   
    width: 200px;   
    height: 200px;   
    background: red;   
}    

新建一個div,并使用前面定義的css的樣式:   
<div id="item">some text here</div>    

在body表現(xiàn)這里加入lang屬性,中文為zh:   
<body lang="en">    

現(xiàn)在對div元素再定義一個樣式:   
*:lang(en) #item{   
    background:green !important;   
}    

這樣做是為了用!important覆蓋原來的css樣式,由于:lang選擇器ie7.0并不支持,所以對這句話不會有任何作用,于是也達到了ie6.0下同樣的效果,但是很不幸地的是,safari同樣不支持此屬性,所以需要加入以下css樣式:   
#item:empty {   
    background: green !important   
}    
:empty選擇器為css3的規(guī)范,盡管safari并不支持此規(guī)范,但是還是會選擇此元素,不管是否此元素存在,現(xiàn)在綠色會現(xiàn)在在除ie各版本以外的瀏覽器上。   

對IE6和FF的兼容可以考慮以前的!important 個人比較喜歡用第一種,簡潔,兼容性比較好。 


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 凌源市| 宜黄县| 正宁县| 荆门市| 霍邱县| 江西省| 宁海县| 古交市| 民乐县| 建瓯市| 三原县| 太保市| 武穴市| 云南省| 横峰县| 瑞安市| 汾西县| 定结县| 翁源县| 永安市| 甘孜| 武功县| 大庆市| 嵩明县| 虹口区| 白银市| 荔浦县| 涞水县| 逊克县| 永吉县| 大丰市| 托克托县| 台湾省| 辛集市| 金湖县| 凤凰县| 高台县| 哈巴河县| 长乐市| 大竹县| 湾仔区|