瀏覽器兼容性問題又被稱爲網頁兼容性或網站兼容性問題,指網頁在各類瀏覽器上的顯示效果可能不一致而產生瀏覽器和網頁間的兼容問題。在網站的設計和製做中,作好瀏覽器兼容,纔可以讓網站在不一樣的瀏覽器下都正常顯示。而對於瀏覽器軟件的開發和設計,瀏覽器對標準的更好兼容可以給用戶更好的使用體驗。css
產生緣由:由於不一樣瀏覽器使用內核及所支持的HTML等網頁語言標準不一樣;以及用戶客戶端的環境不一樣(如分辨率不一樣)形成的顯示效果不能達到理想效果。最多見的問題就是網頁元素位置混亂,錯位。前端
解決方法:web
對於網站開發者來講
目前暫沒有統一的能解決這樣的工具,最廣泛的解決辦法就是不斷的在各瀏覽器間調試網頁顯示效果,經過對css樣式控制以及經過腳本判斷並賦予不一樣瀏覽器的解析標準。
若是所要實現的效果可使用框架,那麼還有另外一個解決辦法是在開發過程當中使用當前比較流行的JS,CSS框架框架,如jQuery,YUI等等,由於這些框架不管是底層的仍是應用層的通常都已經作好了瀏覽器兼容,因此能夠放心使用。除此以外,CSS提供了不少hack接口可供使用,hack既能夠實現跨瀏覽器的兼容,也能夠實現同一瀏覽器不一樣版本的兼容。
瀏覽器內核的區分:
1、Trident內核表明產品Internet Explorer,又稱其爲IE內核。Trident(又稱爲MSHTML),是微軟開發的一種排版引擎。使用Trident渲染引擎的瀏覽器包括:IE、傲遊、世界之窗瀏覽器、Avant、騰訊TT、Netscape 八、NetCaptor、Sleipnir、GOSURF、GreenBrowser和KKman等。
2、Gecko內核表明做品Mozilla FirefoxGecko是一套開放源代碼的、以C++編寫的網頁排版引擎。Gecko是最流行的排版引擎之一,僅次於Trident。使用它的最著名瀏覽器有Firefox、Netscape6至9。
3、WebKit內核表明做品Safari、Chromewebkit 是一個開源項目,包含了來自KDE項目和蘋果公司的一些組件,主要用於Mac OS系統,它的特色在於源碼結構清晰、渲染速度極快。缺點是對網頁代碼的兼容性不高,致使一些編寫不標準的網頁沒法正常顯示。主要表明做品有Safari和Google的瀏覽器Chrome。
4、Presto內核表明做品OperaPresto是由Opera Software開發的瀏覽器排版引擎,供Opera 7.0及以上使用。它取代了舊版Opera 4至6版本使用的Elektra排版引擎,包括加入動態功能,例如網頁或其部分可隨着DOM及Script語法的事件而從新排版。
處理兼容性問題對前端人員是很重要的,必定要多加用心學習。