一:HTML和XHTML的區(qū)別
1.所有的標(biāo)記都必須要有一個相應(yīng)的結(jié)束標(biāo)記
2.所有標(biāo)簽的元素和屬性的名字都必須使用小寫
3.所有的XML標(biāo)記都必須合理嵌套
4.所有的屬性必須用引號""括起來
5.把所有<和&特殊符號用編碼表示
6.給所有屬性賦一個值
7.不要在注釋內(nèi)容中使“--”
8.圖片必須有說明文字
二:兼容性的零碎知識
1:png24位的圖片在iE6瀏覽器上出現(xiàn)背景,解決方案是做成PNG8.也可以引用一段腳本處理.
2:瀏覽器默認(rèn)的margin和padding不同。解決方案是加一個全局的*{margin:0;padding:0;}來統(tǒng)一。
3:IE6雙邊距bug:塊屬性標(biāo)簽float后逢防,又有橫行的margin情況下入宦,在ie6顯示margin比設(shè)置的大焊刹。(IE6雙邊距問題:在IE6下击罪,如果對元素設(shè)置了浮動芋簿,同時又設(shè)置了margin-left或margin-right痒给,margin值會加倍说墨。)#box{ float:left;width:10px;margin:0 0 0 100px;}這種情況之下IE會產(chǎn)生20px的距離,解決方案是在float的標(biāo)簽樣式控制中加入_display:inline;將其轉(zhuǎn)化為行內(nèi)屬性苍柏。(_這個符號只有ie6會識別)
4: ?首先婉刀,巧妙的使用“\9”這一標(biāo)記,將IE游覽器從所有情況中分離出來序仙。??
? ? ? ? 接著突颊,再次使用“+”將IE8和IE7、IE6分離開來潘悼,這樣IE8已經(jīng)獨立識別律秃。? css.bb{background-color:#f1ee18;/*所有識別*/.background-color:#00deff\9;/*IE6、7治唤、8識別*/+background-color:#a200ff;/*IE6棒动、7識別*/_background-color:#1e0bd1;/*IE6識別*/}怪異模式5:問題:漏寫DTD聲明,F(xiàn)irefox仍然會按照標(biāo)準(zhǔn)模式來解析網(wǎng)頁宾添,但在IE中會觸發(fā)怪異模式船惨。為避免怪異模式給我們帶來不必要的麻煩,最好養(yǎng)成書寫DTD聲明的好習(xí)慣÷粕拢現(xiàn)在可以使用[html5](http://www.w3.org/TR/html5/single-page.html)推薦的寫法:``
6:上下margin重合問題
ie和ff都存在粱锐,相鄰的兩個div的margin-left和margin-right不會重合,但是margin-top和margin-bottom卻會發(fā)生重合扛邑。解決方法怜浅,養(yǎng)成良好的代碼編寫習(xí)慣,同時采用margin-top或者同時采用margin-bottom。
三:浮動和它的工作原理恶座?清除浮動的技巧
原理:浮動元素脫離文檔流搀暑,不占據(jù)空間。浮動元素碰到包含它的邊框或者浮動元素的邊框停留跨琳。
1.使用空標(biāo)簽清除浮動自点。? 這種方法是在所有浮動標(biāo)簽后面添加一個空標(biāo)簽 定義cssclear:both. 弊端就是增加了無意義標(biāo)簽。
2.使用overflow脉让。 overflow為hidde ?或者給包含浮動元素的父標(biāo)簽添加css屬性overflow:auto; zoom:1; zoom:1用于兼容IE6桂敛。
3.使用after偽對象清除浮動。? 該方法只適用于非IE瀏覽器侠鳄。使用中需注意以下幾點。一死宣、該方法中必須為需要清除浮動元素的偽對象中設(shè)置height:0伟恶,否則該元素會比實際高出若干像素
#parent
:after
{content:".";
height:0;
visibility:hidden;
display:block;
clear:both;? ? ? ??
}
四:浮動元素引起的問題
(1)父元素的高度無法被撐開,影響與父元素同級的元素
(2)與浮動元素同級的非浮動元素(內(nèi)聯(lián)元素)會跟隨其后
(3)若非第一個元素浮動毅该,則該元素之前的元素也需要浮動博秫,否則會影響頁面顯示的結(jié)構(gòu)
五:html5有哪些新特性 ??
HTML5主要是關(guān)于圖像,位置眶掌,存儲挡育,多任務(wù)等功能的增加朴爬。??
拖拽釋放(Drag and drop)?
?語義化更好的內(nèi)容標(biāo)簽(header,nav,footer,aside,article,section)??
音頻即寒、視頻API(audio,video)?
?畫布(Canvas) ??
地理(Geolocation)
?本地離線存儲 ? ? ?localStorage 長期存儲數(shù)據(jù)召噩,瀏覽器關(guān)閉后數(shù)據(jù)不丟失;? sessionStorage 的數(shù)據(jù)在瀏覽器關(guān)閉后自動刪除?
?表單控件具滴,calendar、date构韵、time周蹭、email、url疲恢、search??
新的技術(shù)webworker, websocket, Geolocation
六:HTML5移除了那些元素凶朗?
純表現(xiàn)的元素:basefont,big显拳,center俱尼,font,s,strike萎攒,tt遇八,u矛绘;
對可用性產(chǎn)生負(fù)面影響的元素:frame,frameset刃永,noframes货矮;
七:如何處理HTML5新標(biāo)簽的瀏覽器兼容問題?
使用最多的是html5shim框架
<!--[if it IE 9]>
<script>src="http://html5shim.googlecode.com/svn/trunk/html5.js"</script>
<![endif]-->
src="http://html5shim.googlecode.com/svn/trunk/html5.js"