摘要:不在此一一列舉,若你遇到代表性問題歡迎留言參考種常見的標(biāo)簽錯誤寫法小結(jié)結(jié)構(gòu)層問題的解決方案就是谷歌瀏覽器按打開控制臺看元素結(jié)構(gòu)是不是你設(shè)想的一樣。解決方案在的時候設(shè)置才能清除漸變背景。
沒錯!我正在寫bug呢!不管你是小白還是大牛,寫bug無可避免,遇到bug怎么辦?別慌!毛主席教導(dǎo)我們“戰(zhàn)略上藐視BUG,戰(zhàn)術(shù)上重視BUG”!
前端遇到的bug無非就三個方面結(jié)構(gòu)層(HTML),表現(xiàn)層(CSS),行為層(JavaScript)。
HTML出錯的主要原因是對規(guī)范不夠理解,沒有按照規(guī)范來布局。網(wǎng)上搜到很多常見的HTNML錯誤都是如此:
錯誤1. 標(biāo)簽嵌套混亂例1:比如常見的p標(biāo)簽里嵌套div標(biāo)簽
我是一個段落
我是一個塊級元素我是一個段落
瀏覽器解析后就變成這樣了
例2:缺少結(jié)束標(biāo)簽,或結(jié)束標(biāo)簽時機(jī)不對。
有時候往往是一個標(biāo)簽沒有閉合導(dǎo)致整個布局錯亂。
/*錯誤代碼*/3333
aaa /*正確代碼*/3333
aaa
錯誤原因:DTD中規(guī)定了塊級元素是不能放在P里;P標(biāo)簽內(nèi)包含塊元素時,它會先結(jié)束自己。另外提一下,內(nèi)聯(lián)元素不可以包含塊元素。
解決思路:如上圖,就是谷歌瀏覽器按F12(command+option)打開控制臺看元素。
br標(biāo)簽作用在于換行的,而被用來增加行間距和內(nèi)聯(lián)元素之間的換行。
/*錯誤代碼*/我是一句話
我是一句話
我是一句話
/*正確代碼*/我是一句話
我是一句話
我是一句話
錯誤原因: br標(biāo)簽?zāi)康脑谟趽Q行,作為增加間距不能準(zhǔn)確的給出具體的間距大小,作為列表不能明確的表示這是一個列表。
解決思路:,通常是用line-height來調(diào)整行間距,用padding來解決段落之間的間距。這樣也能很好的做到結(jié)構(gòu)樣式分離。
為了代碼結(jié)構(gòu)清晰,結(jié)構(gòu)樣式分離,我們不推薦使用內(nèi)聯(lián)樣式。另外當(dāng)有行為層的時候我們大多通過js來改變的是內(nèi)聯(lián)樣式。在結(jié)構(gòu)使用內(nèi)聯(lián)樣式會帶來很多麻煩。
/*錯誤代碼*/ /*正確代碼*/ //使用樣式表定義樣式。
不在此一一列舉,若你遇到代表性問題歡迎留言!參考:10種常見的HTML標(biāo)簽錯誤寫法
小結(jié):結(jié)構(gòu)層(HTML)問題的解決方案就是谷歌瀏覽器按F12(command+option)打開控制臺看元素結(jié)構(gòu)是不是你設(shè)想的一樣。
二、表現(xiàn)層(CSS)少數(shù)原因由于粗心大意少寫了分號或者結(jié)尾的花括號}導(dǎo)致后面的樣式都不起作用了。或者單詞拼寫錯誤引起的樣式無效。在開發(fā)過程中建議使用代碼提示,自動補全功能的編輯器(比如:WebStorm)。學(xué)習(xí)練習(xí)的時候使用手寫的編輯器。
css錯誤大多來自對css權(quán)重的不理解。排除粗心因素通常遇到到設(shè)置的樣式不起作用就是這類原因。
p{background-color: red; width: 200px; height: 100px ; position: relative; z-index: 1} div{background-color: green;width: 200px; height: 100px; margin-top: -50px ;z-index: 999}我是一個段落
我是一個塊
錯誤原因,定位影響層級,定位元素層級高。z-index無效。另外浮動元素也影響層級。
解決思路:查找CSS錯誤的完整步驟
小結(jié):表現(xiàn)層(CSS)解決方案還是利用瀏覽器的元素審查功能,查看你的元素,給元素添加行內(nèi)樣式測試是否有效。如果你的css樣式經(jīng)常不起作用。請認(rèn)真閱讀下面兩篇文章css權(quán)重和Css常用的排序方式權(quán)重分配
解決方案:在hover的時候設(shè)置background-image:none才能清除漸變背景。
錯誤3:有的瀏覽器正常有的瀏覽器不正常這里主要針對css3的兼容性,關(guān)于低版本的ie不做考慮。抵制垃圾瀏覽器從我做起!
例如
display:flex display:-webkit-flex
錯誤原因:沒有做兼容性處理;
解決方案:CSS3新特性,兼容性,兼容方法總結(jié)
例如:
當(dāng)我們運行這段代碼的時候報出了一個錯誤
"Uncaught TypeError: Cannot set property "innerHTML" of null" /AJAX_TEST/selector_test.html (43)
這個時候我們只要根據(jù)錯誤提示找到出錯的地方(43)行,這個時候我們會發(fā)現(xiàn)這段代碼
document.querySelector("#div1 > div").innerHTML = "first div";
出錯的原因就是document.querySelector("#div1 > div")該選擇器找不到該元素節(jié)點,然后我們根據(jù)選擇器找到節(jié)點
發(fā)現(xiàn)該元素節(jié)點被注釋掉了,我們將該注釋取消就OK了
解決思路:在谷歌瀏覽器控制臺查看有沒有報錯。有報錯的,根據(jù)報錯提示,直接找到報錯的那行代碼。
用注釋法或者alert輸出法查找原因。
例如:通過類名獲取元素在有的瀏覽器不支持
解決思路:用if判斷如果瀏覽器支持的情況下怎么出來,不支持的情況下怎么處理,兼容性處理如下
function getClass(n){ if(document.getElementsByClassName){ return document.getElementsByClassName(n); }else{ var objArr=document.getElementsByTagName("*"); var arrClass=[]; for(var i=0;i小結(jié):JavaScript錯誤處理方式
1.通過谷歌或火狐瀏覽器控制臺查看錯誤提示,定位錯誤代碼,打斷點定位錯誤代碼。
2.如果沒錯誤提示的,在源代碼中用alert輸出,或者逐步注釋功能代碼塊,定位錯誤代碼片段。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/112589.html
摘要:版本升級每個文件方法頭標(biāo)明版本號,每次修改需修改版本號大于原版本號,即為版本升級。 這些天項目有的API出現(xiàn)版本控制問題,著實忙乎了一小陣,因為項目使用TP5的傳統(tǒng)方法進(jìn)行版本控制(api目錄下進(jìn)行版本區(qū)分,由請求路徑?jīng)Q定使用的版本) showImg(https://segmentfault.com/img/bVbekSM?w=200&h=128); 但是問題往往是,項目使用了v2版本...
摘要:前端娛樂圈這些年前端有點熱鬧。刷量,撕,版本帝想要混前端,除了要有足夠強(qiáng)的學(xué)習(xí)力。領(lǐng)導(dǎo)說所有測試的都要先指派給前端,前端查清原因后再指給當(dāng)事人。年,前端不再只是切圖仔。 ? 前端娛樂圈 這些年前端有點熱鬧。 github刷量,vue撕x,版本帝angularJs...... showImg(https://segmentfault.com/img/remote/146000001937...
摘要:不在此一一列舉,若你遇到代表性問題歡迎留言參考種常見的標(biāo)簽錯誤寫法小結(jié)結(jié)構(gòu)層問題的解決方案就是谷歌瀏覽器按打開控制臺看元素結(jié)構(gòu)是不是你設(shè)想的一樣。解決方案在的時候設(shè)置才能清除漸變背景。 沒錯!我正在寫bug呢!不管你是小白還是大牛,寫bug無可避免,遇到bug怎么辦?別慌!毛主席教導(dǎo)我們戰(zhàn)略上藐視BUG,戰(zhàn)術(shù)上重視BUG!前端遇到的bug無非就三個方面結(jié)構(gòu)層(HTML),表現(xiàn)層(CSS...
摘要:不在此一一列舉,若你遇到代表性問題歡迎留言參考種常見的標(biāo)簽錯誤寫法小結(jié)結(jié)構(gòu)層問題的解決方案就是谷歌瀏覽器按打開控制臺看元素結(jié)構(gòu)是不是你設(shè)想的一樣。解決方案在的時候設(shè)置才能清除漸變背景。 沒錯!我正在寫bug呢!不管你是小白還是大牛,寫bug無可避免,遇到bug怎么辦?別慌!毛主席教導(dǎo)我們戰(zhàn)略上藐視BUG,戰(zhàn)術(shù)上重視BUG!前端遇到的bug無非就三個方面結(jié)構(gòu)層(HTML),表現(xiàn)層(CSS...
閱讀 4428·2021-09-09 09:33
閱讀 2385·2019-08-29 17:15
閱讀 2373·2019-08-29 16:21
閱讀 980·2019-08-29 15:06
閱讀 2620·2019-08-29 13:25
閱讀 581·2019-08-29 11:32
閱讀 3255·2019-08-26 11:55
閱讀 2594·2019-08-23 18:24