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ǔ)法的事件而重新排版