關於HTML面試題彙總

小龍女先生發表於2016-07-24

一、doctype的作用,嚴格與混雜模式的區別,有何意義

1、語法格式:<!DOCTYPE html>

2、<!DOCTYPE>不是Html標籤,而是告知瀏覽器此頁面使用哪個HTML版本進行編寫的指令

3、html 4.01中有如下三種模式

1、html 4.01 Strict 嚴格模式,不包含展示性(純粹為頁面展示服務的標籤,如:b、font等,因為這些在css中有相應的替代方案)和棄用的元素,如:font,不允許框架集(framesets);

2、html 4.01 Transitional 過濾模式,包含展示性和棄用元素,但不包含框架集(framesets);

3、html 4.01 Frameset 寬鬆模式,包含展示性與棄用元素,也包含構架集(framesets);

4、xhtml 中有如下四種模式

1、xhtml 1.0 Strict 嚴格模式,不包含展示性與棄用的標籤,不允許框架集(framesets),且嚴格以xml格式來編寫標記;

2、xhtml 1.0 Transitional 過濾模式,包含展示性與棄用標籤,不允許框架集(framesets),且嚴格以xml格式來編寫標記;

3、xhtml 1.0 Frameset 寬鬆模式,包含展示性與棄用標籤,允許框架集(framesets),且嚴格以xml格式來編寫標記;

4、xhtml 1.1,等同於xhtml 1.0 strict,但允許新增模型。

5、標準模式與混雜的的區別

1、這兩種模式主要是瀏覽器廠商提煉出來的,標準模式時瀏覽器會根據規範來呈現頁面,而混雜模式時瀏覽器則以向後相容的方式呈現;

2、Mozilla和Safari則用了“幾乎標準模式”,就是在處理表格的方式上有一此細微的差異;

3、最大問題就是IE的盒子渲染機制,出現border-box(怪異模式)、content-box方式;

6、如何觸發混雜模式

1、html 4.01文件,如果包含transitional(過濾)DTD但沒有URI則以混雜模式渲染;

2、如果xhtml、html不存在<!DOCTYPE>標籤,則已混雜模式渲染

二、HTML5為什麼只需要寫<!DOCTYPE HTML>

主要原因為html5中只有一個文件型別,就是html,而不像html 4.01或xhtml1.0還有多個文件型別。

三、行內元素、塊級元素,空元素有那些

1、行內元素:span、a、em(強調)、label、textarea、select、sub、sup等

2、塊級元素:div、ul、ol、li、h1~h6、table、form、p、dl、dd、dt等。

3、空元素:br、hr

四、link與@import匯入樣式的區別

1、html頁引用css的三種,一是頁內的style標籤,二、link外鏈;三是@import匯入

2、link是xhtm標籤,不只外鏈css,還是可是rss服務,而@import只能是css

3、link外鏈的檔案會與文件同步載入,而@import則是等待文件載入完成後才載入

4、link沒有相容性問題,而@import是css2.1規範中的,低版本瀏覽器不支援

5、link支援使用js控制DOM元素樣式,而@import不可以(也就是說可以通過javascript來操作link標籤來改變css文件,以達到更換皮膚的效果,而用@import則不行)

<style>
        @import url('test.css');
    </style>

相關文章