HTML、XML、XHTML 有什么區別?
HTML是一種用于創建網頁的國際通用的標準標記語言,用來展示數據;XML是一種標記語言,由相關人士自由決定的標記語言,即語言的可拓展性,設計用來傳輸及攜帶數據信息,不能用來表現或是展現數據;HTML語法要求比較松散,這樣對網頁編寫者來說,比較方便,但對于機器來說,語言的語法越松散,處理起來就越困難,對于傳統的電腦來說,還有能力兼容松散語法,但對于許多其他設備,比如手機,難度就比較大。因此產生了由DTD定義規則,語法要求更加嚴格的XHTML。從繼承關系上講,HTML是一種基于標準通用標記語言(SGML)的應用,而XHTML則基于可擴展標記語言(XML),XML是SGML的一個子集。
怎樣理解 HTML 語義化?
其實 HTML 在剛開始設計出來的時候就是帶有一定的「語義」的,包括段落、表格、圖片、標題等等,但這些更多地只是方便瀏覽器等 UA 對它們作合適的處理。但逐漸地,因為計算機的理解能力不夠,機器也要借助 HTML 提供的語義以及自然語言處理的手段來「讀懂」它們從網上獲取的 HTML 文檔,但它們無法讀懂例如「紅色的文字」或者是深度嵌套的表格布局中內容的含義,因為太多已有的內容都是專門為了可視化的瀏覽器設計的,因此出現了HTML語義化,具體就是在書寫html時,盡量使用具有語義信息的標簽,例如header,nav,aside,section等代替那些沒有語義信息的標簽,例如big,center,strike,font等(完全可以用css來取代的標簽)。這樣不僅有利于頁面DOM的組織,更重要的是有利于機器(主要是搜索引擎)的理解。
html語義化后的優點:有利于SEO,有助于爬蟲抓取更多的有效信息,爬蟲是依賴于標簽來確定上下文和各個關鍵字的權重。語義化的HTML在沒有CSS的情況下也能呈現較好的內容結構與代碼結構;方便其他設備的解析;便于團隊開發和維護。
怎樣理解內容與樣式分離的原則?
實際內容與呈現出來的方式是互相獨立的。在網頁編碼中,寫html的重點的放在html的結構和語義上,讓html能體現結構或者內容,然后再進行CSS樣式的設置,以此做到減少html和css的契合度(即內容與樣式的分離)
分離原則的優點:PDA、手機等設備可能無法像普通電腦的瀏覽器一樣來渲染網頁(通常是因為這些設備對CSS的支持較弱)因此去掉或樣式丟失的時候能讓頁面呈現清晰的結構;瀏覽器加載網頁頁面速度變快。分離原則下,大部分頁面代碼寫在了CSS當中,頁面體積容量變得更?。痪W頁修改設計時,效率、省時;更好地被搜索引擎收錄;可以根據不同的瀏覽器,達到顯示效果的統一。保證網頁架構不變形的前提下,放心在不同瀏覽器渲染顯示樣式。
有哪些常見的meta標簽?
charste 字符集(網頁中用到的語言的解析方法)
name:
keywords 關鍵字(告訴搜索引擎網頁關鍵字,便于搜索)
description 內容描述(告訴搜索引擎網頁主要內容)
author 作者(標注網頁作者)
文檔聲明的作用?
可告知瀏覽器文檔使用哪種 HTML 或 XHTML 規范。不正確的聲明經常導致不正確顯示,或者導致它們根本不能顯示。
嚴格模式和混雜模式指什么?
嚴格模式指瀏覽器根據最新的規范呈現頁面;混雜模式指不同的瀏覽器使用各自的方式解析執行代碼。
<!doctype html> 的作用?
讓瀏覽器進入標準模式,按照最新的html5的標準解析html頁面,如果不寫將會瀏覽器將會進入混雜模式;
此外XHTML 1.0中有3種DTD聲明可以選擇:
- 過渡的(Transitional)
- 嚴格的(Strict)
- 框架的(Frameset)
XHTML 1.1(該 DTD 等同于 XHTML 1.0 Strict,但允許添加模型)
HTML4.01中也有3種DTD聲明可以選擇: - 過渡的(Transitional)
- 嚴格的(Strict)
- 框架的(Frameset)
瀏覽器亂碼的原因是什么?如何解決
在沒有聲明編碼方式的情況下瀏覽器會使用默認的解碼方式進行解碼,瀏覽器的編碼和解碼不匹配時就會導致產生亂碼,解決方式為對瀏覽器進行說明,直接按照聲明的編碼方式進行解析讀取,就不會有亂碼問題。
常見的瀏覽器有哪些,有什么內核
常見的瀏覽器的有IE,CHROME,FIREFOR,EDGE,Sofari等;常見的瀏覽器內核有IE的Trident,蘋果的WebKit,firefox所使用的Gecko,Opera Software的Presto等。
列出常見的標簽,并簡單介紹這些標簽用在什么場景
常見的標簽 | 應用 |
---|---|
div | 用于組合其他HTML元素成為一個塊 |
h1~h6 | 標題的大小 |
p | 段落 |
span, strong, em | 強調 |
ul, li, ol, dl, dt, dd | 用于設置帶有列表性質的內容 |
table | 涉及表格結構時用到 |
a | 用于打開鏈接 |
img | 圖像顯示 |
id | 唯一指定名字 |
class | 名字 |