HTML、XML、XHTML 有什么區(qū)別
HTML全名為**超文本標(biāo)記語(yǔ)言**(Hyper Text Markup Language),是用于創(chuàng)建Web的標(biāo)準(zhǔn)的標(biāo)記語(yǔ)言。
HTML編碼不規(guī)范,表現(xiàn)、結(jié)構(gòu)混亂。不利于開(kāi)發(fā)和維護(hù)
XML全名為**可擴(kuò)展標(biāo)記語(yǔ)言**(Extensible Markup Language),它也是一種標(biāo)記語(yǔ)言,不過(guò)它的標(biāo)記是可以自定義的,通常用來(lái)傳送及攜帶數(shù)據(jù)。
XHTML是根據(jù)HTML 4 和 XML 1.0重組而成。改進(jìn)了HTML定義不規(guī)范,結(jié)構(gòu)不嚴(yán)謹(jǐn)?shù)娜秉c(diǎn)。它的語(yǔ)法更加嚴(yán)格,相對(duì)HTML的兼容性也不差。
HTML 語(yǔ)義化
語(yǔ)義化HTML是一種編寫(xiě)HTML的方式
選擇合適的標(biāo)簽、使用合理的代碼結(jié)構(gòu),便于開(kāi)發(fā)者閱讀,同時(shí)讓瀏覽器的爬蟲(chóng)和機(jī)器很好地解析。
有哪些常見(jiàn)的meta標(biāo)簽(資料翻閱w3cschool)
content:定義與http-equiv或name相關(guān)的元信息。
http-equiv:將content值關(guān)聯(lián)到http頭部。
name:將content值關(guān)聯(lián)一個(gè)名稱(chēng)。
scheme:定義用于翻譯content的格式。
常用的charset:定義使用的瀏覽器文本字符集。
CSS與HTML分離的優(yōu)點(diǎn)
1、使頁(yè)面載入得更快
由于將大部分頁(yè)面代碼寫(xiě)在了CSS當(dāng)中,使得頁(yè)面體積容量變得更小。相對(duì)于表格嵌套的方式的逐層加載速度快。
2、修改設(shè)計(jì)時(shí)更有效率
在修改頁(yè)面的時(shí)候更加容易省時(shí)。根據(jù)區(qū)域內(nèi)容標(biāo)記,到CSS里找到相應(yīng)的ID,使得修改頁(yè)面的時(shí)候更加方便,也不會(huì)破壞頁(yè)面其他部分的布局樣式。而表格布局則更不省事。
4、保持視覺(jué)的一致性
DIV+CSS最重要的優(yōu)勢(shì)之一:保持視覺(jué)的一致性;以往表格嵌套的制作方法,會(huì)使得頁(yè)面與頁(yè)面,或者區(qū)域與區(qū)域之間的顯示效果會(huì)有偏差。
5、更好地被搜索引擎收錄
由于將大部分的HTML代碼和內(nèi)容樣式寫(xiě)入了CSS文件中,這就使得網(wǎng)頁(yè)中代碼更加適合搜索引擎。
6、對(duì)瀏覽者和瀏覽器更具親和力
對(duì)瀏覽者和瀏覽器更具親和力,由于CSS富含豐富的樣式,使頁(yè)面更加靈活性,更加的美觀,它可以根據(jù)不同的瀏覽器,而達(dá)到顯示效果的統(tǒng)一和不變形。
CSS與HTML分離的缺點(diǎn)
1、CSS網(wǎng)站制作的設(shè)計(jì)元素通常放在1個(gè)外部文件中,或幾個(gè)文件,有可能相當(dāng)復(fù)雜,甚至比較龐大。
3、雖然說(shuō)DIV+CSS解決了大部分瀏覽器兼容問(wèn)題,但是也有在部分瀏覽器中使用出現(xiàn)異常,比如火狐瀏覽器,在IE中顯示正常的頁(yè)面,到了火狐瀏覽器中可能會(huì)面目全非。當(dāng)然這應(yīng)該是瀏覽器的問(wèn)題,但是可以說(shuō)在目前來(lái)看,DIV+CSS還沒(méi)有實(shí)現(xiàn)所有瀏覽器的統(tǒng)一兼容。
4、DIV+CSS對(duì)搜索引擎優(yōu)化與否,取決于網(wǎng)頁(yè)設(shè)計(jì)的專(zhuān)業(yè)水平,而不是DIV+CSS本身。
一、Doctype作用是什么?
聲明叫做文件類(lèi)型定義(DTD),聲明的作用為了告訴瀏覽器該文件的類(lèi)型。讓瀏覽器解析器知道應(yīng)該用哪個(gè)規(guī)范來(lái)解析文檔。聲明必須在 HTML 文檔的第一行,這并不是一個(gè) HTML 標(biāo)簽。
二、嚴(yán)格模式與混雜模式如何區(qū)分?它們有何意義?
嚴(yán)格模式:又稱(chēng)標(biāo)準(zhǔn)模式,是指瀏覽器按照 W3C 標(biāo)準(zhǔn)解析代碼。
混雜模式:又稱(chēng)怪異模式或兼容模式,是指瀏覽器用自己的方式解析代碼。
一、常用的具體聲明:
1、HTML5(一種):<!DOCTYPE html>
2、HTML 4.01(三種):!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"? "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"
HTML 4.01 Strict :<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
HTML 4.01 Transitional :<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"? "http://www.w3.org/TR/html4/loose.dtd">
HTML 4.01 Frameset :<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"? "http://www.w3.org/TR/html4/frameset.dtd">
3、XHTML 1.0(四種):前三種模式同上,XHML 必須以格式正確的 XML 來(lái)編寫(xiě)標(biāo)記。
XHTML 1.0Strict:< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"? "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
XHTML 1.0 Transitional :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
XHTML 1.0 Frameset:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"? "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
XHTML 1.1 該 DTD 等同于 XHTML 1.0 Strict,但允許添加模型:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
亂碼造成原因 ?
1、比如網(wǎng)頁(yè)源代碼是gbk的編碼,而內(nèi)容中的中文字是utf-8編碼的,這樣瀏覽器打開(kāi)即會(huì)出現(xiàn)html亂碼。反之網(wǎng)頁(yè)是編碼utf-8,內(nèi)容是gbk也會(huì)出現(xiàn)亂碼。
2、html網(wǎng)頁(yè)編碼是gbk,而程序從數(shù)據(jù)庫(kù)中調(diào)出呈現(xiàn)是utf-8編碼的內(nèi)容也會(huì)造成編碼亂碼。
3、瀏覽器不能自動(dòng)檢測(cè)網(wǎng)頁(yè)編碼,造成網(wǎng)頁(yè)亂碼
瀏覽器及其內(nèi)核
一、Trident內(nèi)核代表產(chǎn)品Internet Explorer,又稱(chēng)其為IE內(nèi)核。Trident(又稱(chēng)為MSHTML),是微軟開(kāi)發(fā)的一種排版引擎。使用Trident渲染引擎的瀏覽器包括:IE、傲游、世界之窗瀏覽器、Avant、騰訊TT、Netscape 8、NetCaptor、Sleipnir、GOSURF、GreenBrowser和KKman等。
二、Gecko內(nèi)核代表作品Mozilla FirefoxGecko是一套開(kāi)放源代碼的、以C++編寫(xiě)的網(wǎng)頁(yè)排版引擎。Gecko是最流行的排版引擎之一,僅次于Trident。使用它的最著名瀏覽器有Firefox、Netscape6至9。
3
三、WebKit內(nèi)核代表作品Safari、Chromewebkit 是一個(gè)開(kāi)源項(xiàng)目,包含了來(lái)自KDE項(xiàng)目和蘋(píng)果公司的一些組件,主要用于Mac OS系統(tǒng),它的特點(diǎn)在于源碼結(jié)構(gòu)清晰、渲染速度極快。缺點(diǎn)是對(duì)網(wǎng)頁(yè)代碼的兼容性不高,導(dǎo)致一些編寫(xiě)不標(biāo)準(zhǔn)的網(wǎng)頁(yè)無(wú)法正常顯示。主要代表作品有Safari和Google的瀏覽器Chrome。
4
四、Presto內(nèi)核代表作品OperaPresto是由Opera Software開(kāi)發(fā)的瀏覽器排版引擎,供Opera 7.0及以上使用。它取代了舊版Opera 4至6版本使用的Elektra排版引擎,包括加入動(dòng)態(tài)功能,例如網(wǎng)頁(yè)或其部分可隨著DOM及Script語(yǔ)法的事件而重新排版