HTML
1.Doctype作用强窖,標(biāo)準(zhǔn)模式與兼容模式的區(qū)別
? ?<Doctype>聲明位于html文檔中的第一行蜻韭,處于<>html標(biāo)簽之前白嘁。告知瀏覽器用什么文檔標(biāo)準(zhǔn)來(lái)解析這個(gè)文檔但惶,DOCTYPE不存在或者格式不正常 會(huì)導(dǎo)致文檔以兼容模式呈現(xiàn)妄迁。
? ? 保準(zhǔn)模式的排版和js運(yùn)作模式都是以瀏覽器支持的最高標(biāo)準(zhǔn)運(yùn)行。在兼容模式中兑障,頁(yè)面以寬松的向后兼容的方式顯示侄非,模擬老式瀏覽器的行為以防站點(diǎn)無(wú)法工作蕉汪。
2.html5 為什么只要寫(xiě)<!Doctype html>
? ? html5不基于SGML,因此不需要對(duì)DTD進(jìn)行引導(dǎo)逞怨,但是需要doctype來(lái)規(guī)范瀏覽器的行為者疤。
? ? sgml是標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言,html是超文本標(biāo)記語(yǔ)言 xml是可擴(kuò)展標(biāo)記語(yǔ)言? xhtml和html差不多比html嚴(yán)格叠赦,不如標(biāo)簽都用小寫(xiě)驹马,都得有閉合標(biāo)簽等。
3除秀,行內(nèi)元素有哪些糯累,塊級(jí)元素有哪些,空元素有哪些
? ? 首先册踩,css規(guī)范規(guī)定泳姐,每個(gè)元素都用display屬性,確定該元素的類型暂吉,每個(gè)元素都用默認(rèn)的display的值胖秒,比如div的默認(rèn)值為block 則為塊級(jí),span的默認(rèn)值為inline則為行內(nèi)元素
(1)行內(nèi):span,a,b,i,img,input,select,strong
(2)塊級(jí):div ol ul li dl dt dd h1 h2 h3 p
(3)常見(jiàn)空元素
? ? <br> <hr> <img> <input> <link> <meta>
4.頁(yè)面導(dǎo)入樣式的時(shí)候慕的,使用link和import有什么區(qū)別
? ? (1)link屬于xhtml標(biāo)簽阎肝,除了加載css外,還能用來(lái)定義rss肮街,定義rel鏈接屬性等作用风题;而import是css提供的,只能用于加載css
? ? (2)頁(yè)面加載時(shí)link會(huì)同時(shí)被加載嫉父,import是頁(yè)面加載完成時(shí)在加載
? ? (3)import是css標(biāo)簽有兼容性(ie5以上被識(shí)別) link沒(méi)有兼容性
5.瀏覽器內(nèi)核的理解沛硅,以及常見(jiàn)內(nèi)核
? ? 瀏覽器內(nèi)核分為:渲染引擎和js引擎,js引擎越來(lái)越獨(dú)立熔号,現(xiàn)在內(nèi)核傾向于渲染引擎
? ? Trident : ie
? ? Gecko : FF
? ? Presto : opera7
? ? webkit:sifari稽鞭,chrom
6.Html5有哪些新特性鸟整,移除了哪些引镊,如何處理html5新標(biāo)簽的瀏覽器兼容問(wèn)題,如何區(qū)分html和html5
? ? html5現(xiàn)在已經(jīng)不是SGML的子集篮条,主要是關(guān)于圖像弟头,位置,存儲(chǔ)涉茧,多任務(wù)等功能的增加
? ? ? ? ? ? 繪畫(huà):canvas赴恨;媒介回放的:video,audio元素伴栓;本地離線存貯伦连;長(zhǎng)期存儲(chǔ)數(shù)據(jù):localstroage雨饺;關(guān)閉瀏覽器自動(dòng)刪除:sessionstroge ;語(yǔ)義化元素:article,footer,header,nav,section; 表單控件:data time email url search 惑淳;新的技術(shù):webworker额港,websocket,Geolocation
????移除的元素:純表現(xiàn)的元素:basefont歧焦,big移斩,center,font绢馍,s向瓷,tt;舰涌;對(duì)于可用性產(chǎn)生負(fù)面影? ? ? ? ? 響的:frame
? ? 怎么讓瀏覽器支持新特性: IE6/7/8支持通過(guò)document.createElement方法產(chǎn)生的標(biāo)簽猖任,可以利用這一點(diǎn)讓瀏覽器支持html5新標(biāo)簽,瀏覽器支持新標(biāo)簽后瓷耙,還需要添加標(biāo)簽?zāi)J(rèn)的樣式超升,
? ? 當(dāng)然可有成熟的框架: html5shim?
?區(qū)分是不是html5標(biāo)簽: doctype聲明/新增的結(jié)構(gòu)元素,功能元素 src="http://html5shim.googlecode.com/svn/trunk/html5.js"
7.語(yǔ)義化的理解
? ? 正確的標(biāo)簽做正確的是哺徊,結(jié)構(gòu)化室琢,內(nèi)容清晰,便于瀏覽器解析落追,在沒(méi)有css的樣式下也以一種文檔格式顯示盈滴,容易閱讀,有利于seo轿钠,便于閱讀源代碼
8.css3創(chuàng)建三角形的原理
? ? 把上左右三遍隱藏掉
? ? #demo{
? ? ? ? width: 0;
? ? ? ? height:0;
? ? ? ?border-width: 20px;
? ? ? ? border-style: solid;
? ? ? ? border-color:transparent transparent red transparent;
????}
9.
10. 為什么要清除浮動(dòng)巢钓, 清楚浮動(dòng)的方式
? ? 清除浮動(dòng)是為了清除使用浮動(dòng)元素產(chǎn)生的影響,浮動(dòng)的元素疗垛,高度會(huì)塌陷症汹,而高度塌陷使我們頁(yè)面后面的布局不能正常顯示
? ? 方法 1. 父級(jí)div定義height 2.父級(jí)div一起浮動(dòng)?
????????3.常規(guī)的使用一個(gè)class? .clearfix::before,.clearfix::after{ content: ""; display:table} .clearfix::after{ clear:both }? .clearfix{ *zoom: 1}
? ? 4, .clearfix::atter,.clearfix::before{ content:"", visibility: hidden; display: block; height:0; clear: both}
解析原理: display:block 使生成的元素以塊級(jí)元素顯示,占滿剩余空間贷腕; height:0 背镇;避免生成高度破壞原有布局的高度,visibility:hidden 使生成內(nèi)容不可見(jiàn)泽裳,并允許可能被生成被生成內(nèi)容蓋住的內(nèi)容可以進(jìn)行點(diǎn)擊交互瞒斩,通過(guò)content:"."生成元素作為最后一個(gè)元素,至于content里邊的內(nèi)容是森馬無(wú)所謂 因?yàn)槎伎床坏戒套埽瑉oom:1 出發(fā)ie的haslayout胸囱。
11.森馬是外邊距合并
? ? ? ? 外邊距合并指的是,當(dāng)兩個(gè)垂直外邊距相遇時(shí)瀑梗,他們講形成一個(gè)外邊距烹笔,合并后的外邊距的高度等于發(fā)生合并的外邊距的高度重的較大者
12裳扯,頁(yè)面的重繪以及回流(重排):頁(yè)面第一次加載時(shí)一定會(huì)進(jìn)行一次回流,當(dāng)頁(yè)面發(fā)生dom改變谤职,增刪改查嚎朽,會(huì)促使頁(yè)面的回流,當(dāng)頁(yè)面只是單純的進(jìn)行樣式改變則會(huì)發(fā)生重繪柬帕,回流必定會(huì)引起重繪哟忍,重繪不一定會(huì)引起回流。