摘要:個(gè)人認(rèn)為兼容性的問(wèn)題也是對(duì)這三個(gè)方面進(jìn)行處理。能力檢測(cè)需要注意兩點(diǎn)先檢測(cè)達(dá)成目的的最常用的特性,可以保證代碼最優(yōu)化,并避免檢測(cè)多個(gè)條件必須測(cè)試實(shí)際要是用到的特性這些就是小可對(duì)兼容性的理解,有不對(duì)的希望各位朋友指正探討,嘻嘻
這里和朋友們簡(jiǎn)單探討一下個(gè)人對(duì)于前端兼容性的一些理解:
在項(xiàng)目中,前端主要處理html,css,javaScript代碼,當(dāng)然還有可能接觸到razor等渲染引擎方面的知識(shí),不過(guò)主要處理的還是HTML、CSS、JavaScript。個(gè)人認(rèn)為兼容性的問(wèn)題也是對(duì)這三個(gè)方面進(jìn)行處理。
首先,是html方面兼容性的處理,大家都知道,雖然有一個(gè)W3c標(biāo)準(zhǔn)的存在去規(guī)范html、xml/xhtml/css/javaScript/dom的標(biāo)準(zhǔn),但是這只是個(gè)標(biāo)準(zhǔn),真正體現(xiàn)出效果的是瀏覽器,而瀏覽器卻有很多種,firefox/chrome/ie等等,每個(gè)瀏覽器又有不同的版本,不同瀏覽器不同版本因?yàn)闉g覽器本身渲染引擎的不同,在對(duì)于w3c標(biāo)準(zhǔn)的支持版本不同造就了一大堆的兼用性問(wèn)題。對(duì)于html的兼容性問(wèn)題,這里只講兩個(gè)處理方案:
1、使用樣式重置css文件解決相同html標(biāo)簽在不同瀏覽器或者相同瀏覽器不同版本上渲染不同的兼容性問(wèn)題。(個(gè)人推薦normalize.css),當(dāng)然這只供參考,樣式重置要適應(yīng)所在的項(xiàng)目風(fēng)格,公司的開(kāi)發(fā)規(guī)范要求等進(jìn)行定制,所以要看具體要求,不過(guò)大致的重置樣式都差不多,無(wú)非就是對(duì)padding,margin、字體屬性等一些進(jìn)行重置,具體大家可以去normalize.css查看里面的css樣式。
2、在網(wǎng)頁(yè)的頂部加上 doctype (文檔類型)標(biāo)簽聲明。這里涉及一個(gè)盒子模型的問(wèn)題,大家知道,ie是特立獨(dú)行的,在盒子模型上,ie的處理也不同,在ie中標(biāo)簽的width,height屬性是包括padding和border的。當(dāng)沒(méi)有加上doctype時(shí),每個(gè)瀏覽器都按照它自己的方式來(lái)渲染標(biāo)簽,這就會(huì)造成兼用性問(wèn)題,而加上之后,瀏覽器會(huì)按照w3c標(biāo)準(zhǔn)盒子模型渲染標(biāo)簽。
再者是css兼用性問(wèn)題,reset重置樣式只解決了一些比較簡(jiǎn)單的樣式問(wèn)題,而類似于雙邊距、最小高度等問(wèn)題,還需要開(kāi)發(fā)者在各自的項(xiàng)目中進(jìn)行對(duì)應(yīng)的處理,這里還是總結(jié)的比較全面的,有興趣朋友可以看一下(https://zhuanlan.zhihu.com/p/...)。
最后,就是JavaScript的兼容性問(wèn)題,由于瀏覽器的發(fā)展及引擎不同,瀏覽器所自帶的api也會(huì)不同,這就引起了JavaScript的兼用性問(wèn)題,在引用對(duì)象屬性或者方法時(shí)需要進(jìn)行客戶端檢測(cè),就是檢測(cè)當(dāng)前瀏覽器所處系統(tǒng)、所支持的語(yǔ)法、所具有的特殊性能。包括能力檢測(cè)、怪癖檢測(cè)和用戶代理檢測(cè)三種,個(gè)人比較推崇能力檢測(cè):
能力檢測(cè)的目標(biāo)不是識(shí)別特定的瀏覽器,而是識(shí)別瀏覽器的能力。使用這種方式無(wú)需顧及瀏覽器如何如何,只需確定瀏覽器是否支持特定的能力,就可以給出相關(guān)的方案。能力檢測(cè)需要注意兩點(diǎn):
1、先檢測(cè)達(dá)成目的的最常用的特性,可以保證代碼最優(yōu)化,并避免檢測(cè)多個(gè)條件; 2、必須測(cè)試實(shí)際要是用到的特性;
這些就是小可對(duì)兼容性的理解,有不對(duì)的希望各位朋友指正探討,嘻嘻~
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/112333.html
摘要:個(gè)人認(rèn)為兼容性的問(wèn)題也是對(duì)這三個(gè)方面進(jìn)行處理。能力檢測(cè)需要注意兩點(diǎn)先檢測(cè)達(dá)成目的的最常用的特性,可以保證代碼最優(yōu)化,并避免檢測(cè)多個(gè)條件必須測(cè)試實(shí)際要是用到的特性這些就是小可對(duì)兼容性的理解,有不對(duì)的希望各位朋友指正探討,嘻嘻 這里和朋友們簡(jiǎn)單探討一下個(gè)人對(duì)于前端兼容性的一些理解: 在項(xiàng)目中,前端主要處理html,css,javaScript代碼,當(dāng)然還有可能接觸到razor等渲染引擎方面...
摘要:個(gè)人認(rèn)為兼容性的問(wèn)題也是對(duì)這三個(gè)方面進(jìn)行處理。能力檢測(cè)需要注意兩點(diǎn)先檢測(cè)達(dá)成目的的最常用的特性,可以保證代碼最優(yōu)化,并避免檢測(cè)多個(gè)條件必須測(cè)試實(shí)際要是用到的特性這些就是小可對(duì)兼容性的理解,有不對(duì)的希望各位朋友指正探討,嘻嘻 這里和朋友們簡(jiǎn)單探討一下個(gè)人對(duì)于前端兼容性的一些理解: 在項(xiàng)目中,前端主要處理html,css,javaScript代碼,當(dāng)然還有可能接觸到razor等渲染引擎方面...
摘要:為此決定自研一個(gè)富文本編輯器。例如當(dāng)要轉(zhuǎn)化的對(duì)象有環(huán)存在時(shí)子節(jié)點(diǎn)屬性賦值了父節(jié)點(diǎn)的引用,為了關(guān)于函數(shù)式編程的思考作者李英杰,美團(tuán)金融前端團(tuán)隊(duì)成員。只有正確使用作用域,才能使用優(yōu)秀的設(shè)計(jì)模式,幫助你規(guī)避副作用。 JavaScript 專題之惰性函數(shù) JavaScript 專題系列第十五篇,講解惰性函數(shù) 需求 我們現(xiàn)在需要寫(xiě)一個(gè) foo 函數(shù),這個(gè)函數(shù)返回首次調(diào)用時(shí)的 Date 對(duì)象,注意...
摘要:探討判斷橫豎屏的最佳實(shí)現(xiàn)前端掘金在移動(dòng)端,判斷橫豎屏的場(chǎng)景并不少見(jiàn),比如根據(jù)橫豎屏以不同的樣式來(lái)適配,抑或是提醒用戶切換為豎屏以保持良好的用戶體驗(yàn)。 探討判斷橫豎屏的最佳實(shí)現(xiàn) - 前端 - 掘金在移動(dòng)端,判斷橫豎屏的場(chǎng)景并不少見(jiàn),比如根據(jù)橫豎屏以不同的樣式來(lái)適配,抑或是提醒用戶切換為豎屏以保持良好的用戶體驗(yàn)。 判斷橫豎屏的實(shí)現(xiàn)方法多種多樣,本文就此來(lái)探討下目前有哪些實(shí)現(xiàn)方法以及其中的優(yōu)...
閱讀 3295·2023-04-26 02:40
閱讀 4648·2021-09-22 15:22
閱讀 1586·2021-09-22 10:02
閱讀 3481·2021-08-11 10:23
閱讀 1392·2019-08-30 15:55
閱讀 2493·2019-08-30 12:48
閱讀 586·2019-08-30 11:04
閱讀 702·2019-08-29 16:29