1.網(wǎng)頁亂碼的問題是如何產(chǎn)生的?怎樣解決?
- 亂碼產(chǎn)生的根本原因
我們在保存文件時(shí)的編碼格式和用瀏覽器解析文件時(shí)的解碼方式不一致所導(dǎo)致。開發(fā)中常引起網(wǎng)頁亂碼的場景有,我們在用編輯器保持代碼時(shí),編輯器會用自己默認(rèn)的編碼保存文件,當(dāng)我打開文件時(shí),瀏覽器使用默認(rèn)的解碼格式進(jìn)行渲染,當(dāng)這兩種格式不一致時(shí)就會產(chǎn)生亂碼。還有就是當(dāng)在html代碼中寫的編碼格式和保存文件的編碼格式不一致時(shí)也會引起亂碼。 - 解決方法
使html代碼中寫的格式為和保存文件的格式保持一致。
不同的編輯器會有不同的默認(rèn)編碼格式,我們在開發(fā)時(shí)指定編碼來規(guī)范文件的解碼格式。
常見的編碼格式:ASCII、ISOLatin-1、UNICODE、UTF-8、GBK
在實(shí)際開發(fā)中用的比較多的是UTF-8。
2.顏色有幾種寫法, 紅色、 綠色、藍(lán)色、白色、黑色如何表示? 透明黑色如何表示?
所有的顏色都由紅綠藍(lán)混合而成,分三種寫法,分別為:
- 用英文名字指定顏色
16種基本顏色和150種擴(kuò)展顏色可以采取這種方式指定,顏色名對大小寫不敏感,大部分瀏覽器都支持顏色名集合
僅僅有 16 種顏色名被 W3C 的 HTML4.0 標(biāo)準(zhǔn)所支持。它們是:aqua, black, blue, fuchsia, gray, green, lime, maroon, navy, olive, purple, red, silver, teal, white, yellow。
- 使用 rgb(r,g,b)來表示
rgb的數(shù)值使用十進(jìn)制數(shù)0-255或者使用百分比來表示紅綠藍(lán)三原色,其中顏色的透明度由alpha值來實(shí)現(xiàn),Alpha參數(shù)是一個(gè)介于0.0(完全透明)和1.0(完全不透明)之間的參數(shù)。eg:紅色用rgb (255, 0, 0)表示;半透明度的紅色用rgba(255, 0, 0, 0.5)表示;其它依次類推。 - 使用十六進(jìn)制碼指定顏色
十六進(jìn)制碼是使用最廣泛的,因?yàn)殚_發(fā)人員認(rèn)為這是一種最方便的指定顏色的方法。一個(gè)十六進(jìn)制碼中,每組2位數(shù)字分別代表顏色的紅、綠、藍(lán)分量。所以前兩個(gè)數(shù)字表示紅色,接下來兩位表示綠色,最后兩位表示藍(lán)色。
十六進(jìn)制快速轉(zhuǎn)換為十進(jìn)制數(shù)的算法:
16進(jìn)制即逢16進(jìn)1,其中用A,B,C,D,E,F(xiàn)(字母不區(qū)分大小寫)這六個(gè)字母來分別表示10,11,12,13,14,15。故而有16進(jìn)制每一位上可以是從小到大為0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F共16個(gè)大小不同的數(shù)。
16進(jìn)制數(shù)的第0位的[權(quán)值]為16的0次方,第1位的權(quán)值為16的1次方,第2位的權(quán)值為16的2次方……
所以,在第N(N從0開始)位上,如果是是數(shù) X (X 大于等于0,并且X小于等于 15,即:F)表示的大小為 X 乘 16的N次方。
我們拿常見的紅色#FF0000舉例:
F對應(yīng)15,
所以FF在十進(jìn)制中就表示15*16^1+15 * 16^0=15*16+15*1=255
00在十進(jìn)制中就表示0*161+0*160=0*16+0*1=0。
即知道#FF0000對應(yīng)十進(jìn)制的rgb(255,0,0)。
按這個(gè)規(guī)則就可以快速地將十六進(jìn)制轉(zhuǎn)換為十進(jìn)制,來準(zhǔn)確知道這個(gè)顏色重紅、綠、藍(lán)各有多少。
3.<!doctype html>的作用是什么
doctype(文檔類型定義)是用來告訴瀏覽器網(wǎng)頁使用那種 HTML 版本。不同文檔模式主要影響CSS內(nèi)容的呈現(xiàn),尤其是瀏覽器對盒模型的解析,但在某些情況下也會影響到JavaScript的解釋執(zhí)行。
聲明<!doctype html>是告訴瀏覽器用html5的規(guī)則去渲染網(wǎng)頁,
此聲明大小寫不敏感。
4.嚴(yán)格模式和混雜模式指什么
有<!doctype>聲明的為嚴(yán)格模式,一般聲明DTD,要求瀏覽器嚴(yán)格web標(biāo)準(zhǔn)去進(jìn)行解析。
嚴(yán)格模式的觸發(fā)方式:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
IE8中關(guān)閉超級標(biāo)準(zhǔn)模式:<meta http-equiv="X-UA-Compatible" content="IE=7" /> //content屬性中IE的值用于指定使用哪個(gè)版本的呈現(xiàn)引擎來呈現(xiàn)頁面。設(shè)計(jì)這個(gè)值的目的就是為了向后兼容那些專門為老版本的IE設(shè)計(jì)的站點(diǎn)和頁面。
沒有<!doctype>聲明的為混雜模式,混雜模式是一種比較寬松的向后兼容的模式?;祀s模式通常模擬老式瀏覽器的行為,以防止老站點(diǎn)無法工作。采用混雜模式不是什么值得推薦的做法,因?yàn)椴煌瑸g覽器在這種模式下的行為差異非常大,如果不使用某些hack技術(shù),跨瀏覽器的行為根本就沒有一致性可言。
5.meta有什么作用,常見的值有哪些
meta是HTML語言head區(qū)的一個(gè)輔助性標(biāo)簽,一般位于文檔的頭部,提供有關(guān)web網(wǎng)頁的元數(shù)據(jù),元數(shù)據(jù)不會顯示在頁面。<meta> 元素可提供有關(guān)頁面的元信息(meta-information),比如針對搜索引擎和更新頻度的描述和關(guān)鍵詞。
常見的屬性和值
content:some_text (定義與 http-equiv 或 name 屬性相關(guān)的元信息)
http-equiv:content-type、expires、refresh、set-cookie
name:author、description、keywords、generator、revised、others
scheme:some_text(定義用于翻譯 content 屬性值的格式。)
用法舉例:
<meta name="keywords"content="meta總結(jié),html meta,meta屬性,meta跳轉(zhuǎn)">
<meta name="description"content="haorooms博客,html的meta總結(jié),meta是html語言head區(qū)的一個(gè)輔助性標(biāo)簽。">
<meta name="robots"content="none">
<meta name="author"content="root,root@xxxx.com">
<META name="revisit-after"CONTENT="7days">
<meta http-equiv="expires"content="Fri,12Jan200118:18:18GMT">
<meta http-equiv="Refresh"content="2;URL=http://www.haorooms.com"> //(注意后面的引號,分別在秒數(shù)的前面和網(wǎng)址的后面)
<meta http-equiv="content-Type"content="text/html;charset=gb2312">
6.<meta http-equiv="X-UA-compatible" content="IE=edge,chrome=1"有什么作用
用這句話來設(shè)置瀏覽器的兼容模式,其中X-UA-compatible是IE8為了所有未來的IE版本都有一致的外觀引入的新特性。
IE=edge表示用要瀏覽器用最新的內(nèi)核規(guī)則進(jìn)行渲染。chrome=1可以激活chrome frame。
7.常見的瀏覽器有哪些,什么內(nèi)核
Chrome:WebKit 內(nèi)核
Internet Explorer:Trident(IE 內(nèi)核)
Firefox:Gecko 內(nèi)核
Safari:WebKit 內(nèi)核
Opera:Presto 內(nèi)核
極速360用的WebKit和Trident
QQ瀏覽器:內(nèi)核為Chromium+Trident內(nèi)核
** 本教程版權(quán)歸作者和饑人谷所有,轉(zhuǎn)載須說明來源! **