前端面試題

爲何要語義化?css

爲了在沒有CSS的狀況下,頁面也能呈現出很好地內容結構、代碼結構 : 爲了裸奔時好看;html

用戶體驗:例如title、 alt 用於解釋名詞或解釋圖片信息、 label 標籤的活用;java

有利於SEO:和搜索引擎創建良好溝通,有助於爬蟲抓取更多的有效信息:爬蟲依賴於標籤來肯定上下文和各個關鍵字的權重;web

方便其餘設備解析(如屏幕閱讀器、盲人閱讀器、移動設備)以意義的方式來渲染網頁;算法

便於團隊開發和維護,語義化更具可讀性,是下一步吧網頁的重要動向,遵循W3C標準的團隊都遵循這個標準,能夠減小差別化。瀏覽器

語義化標籤有哪些?服務器

<header></header>cookie

<footer></footer>session

<nav></nav>app

<section></section>

<article></article> 表示一套結構完整且獨立的內容部分

<aslde></aside> 主題的附屬信息 

<figure></figure>媒體元素,好比視頻,圖片

<datalist></datalist>選項列表,與 input 元素配合使用,來定義 input 可能的值

<details></details>用於描述文檔或者文檔某個部分的細節

3.Doctype做用? 嚴格模式與混雜模式如何區分?它們有何意義?

1)、 聲明位於文檔中的最前面,處於標籤以前。告知瀏覽器的解析器,用什麼文檔類型 規範來解析這個文檔。

2)、嚴格模式的排版和JS 運做模式是以該瀏覽器支持的最高標準運行。

3)、在混雜模式中,頁面以寬鬆的向後兼容的方式顯示。模擬老式瀏覽器的行爲以防止站點沒法工做。

4)、DOCTYPE不存在或格式不正確會致使文檔以混雜模式呈現。

11.請你描述一下 cookies,sessionStorage 和 localStorage 的區別?

sessionStorage 和 localStorage 是 HTML5 Web Storage API 提供的,能夠方便的在 web 請求之間保存數據。有了本地數據,就能夠避免數據在瀏覽器和服務器間沒必要要地來回傳遞。

sessionStorage、 localStorage 、 cookie 都是在瀏覽器端存儲的數據,其中 sessionStorage 的概念很特別,引入了一個「瀏覽器窗口」的概念。

 

sessionStorage 是在同源的同學口(或 tab )中,始終存在的數據。只要瀏覽器窗口沒有關閉,即便刷新頁面或進入同源另外一頁面,數據仍然存在。

關閉窗口後, sessionStorage 即被銷燬。同時「獨立」打開的不一樣窗口,即便是同一頁面, sessionStorage 對象也是不一樣的

cookies會發送到服務器端。其他兩個不會。

區別:

Cookie

每一個域名存儲量比較小(各瀏覽器不一樣,大體 4K )

全部域名的存儲量有限制(各瀏覽器不一樣,大體 4K )

有個數限制(各瀏覽器不一樣)

會隨請求發送到服務器

LocalStorage

永久存儲

單個域名存儲量比較大(推薦 5MB ,各瀏覽器不一樣)

整體數量無限制

SessionStorage

只在 Session 內有效

存儲量更大(推薦沒有限制,可是實際上各瀏覽器也不一樣)

瀏覽器頁面有哪三層構成,分別是什麼,做用是什麼?

構成:結構層、表示層、行爲層

分別是:HTML、CSS、JavaScript

做用:HTML實現頁面結構,CSS完成頁面的表現與風格,JS實現一些客戶端的功能與業務。

HTML5行內元素有哪些,塊級元素有哪些, 空元素有哪些?

行內元素

a - 錨點

abbr - 縮寫

acronym - 首字

b - 粗體 ( 不推薦 )

bdo - bidi override

big - 大字體

br - 換行

cite - 引用

code - 計算機代碼 ( 在引用源碼的時候須要 )

dfn - 定義字段

em - 強調

font - 字體設定 ( 不推薦 )

i - 斜體

img - 圖片

input - 輸入框

kbd - 定義鍵盤文本

label - 表格標籤

q - 短引用

s - 中劃線 ( 不推薦 )

samp - 定義範例計算機代碼

select - 項目選擇

small - 小字體文本

span - 經常使用內聯容器,定義文本內區塊

strike - 中劃線

strong - 粗體強調

sub - 下標

sup - 上標

textarea - 多行文本輸入框

tt - 電傳文本

u - 下劃線

var - 定義變量

塊元素 (block element)

address - 地址

blockquote - 塊引用

center - 舉中對齊塊

dir - 目錄列表

div - 經常使用塊級容易,也是 css layout 的主要標籤

dl - 定義列表

fieldset - form控制組

form - 交互表單

h3 - 大標題h4 - 副標題h3 - 3級標題h4 - 4級標題h5 - 5級標題h6 - 6級標題

hr - 水平分隔線

isindex - input prompt

menu - 菜單列表

noframes - frames可選內容,(對於不支持 frame 的瀏覽器顯示此區塊內容

noscript - )可選腳本內容(對於不支持 script 的瀏覽器顯示此內容)

ol - 排序表單

p - 段落

pre - 格式化文本

table - 表格

ul - 非排序列表

可變元素,可變元素爲根據上下文語境決定該元素爲塊元素或者內聯元素。

applet - java applet

button - 按鈕

del - 刪除文本

iframe - inline frame

ins - 插入的文本

map - 圖片區塊 (map)

object - object對象

script - 客戶端腳本

空元素 ( 在 HTML[1] 元素中,沒有內容的 HTML 元素被稱爲空元素 )

br

hr

input

img

link

meta

19.常見的瀏覽器內核有哪些?

>1. `Trident內核`: `IE`,`MaxThon`,`TT`,`The World`,`360`, `搜狗`等。[ 又稱 MSHTML]

2. `Gecko內核`: `Netscape6` 及以上版本,`FF`,`MozillaSuite/SeaMonkey `等

3. `Presto內核`: `Opera7 `及以上。[`Opera` 內核原爲: `Presto` ,現爲:` Blink`;]

4. `Webkit內核`: `Safari`,`Chrome` 等。[ `Chrome` 的: `Blink ( WebKit 的分支)` ]

問:xhtml和html有什麼區別?

答:HTML是一種基本的WEB網頁設計語言,XHTML是一個基於XML的置標語言

最主要的不一樣:

XHTML 元素必須被正確地嵌套。

XHTML 元素必須被關閉。

標籤名必須用小寫字母。

XHTML 文檔必須擁有根元素。

link和@import的區別:

二者都是外部引用CSS方式,可是存在必定的區別

a、link引用CSS時,在頁面載入時同時加載;@import須要頁面網頁徹底載入之後加載。

b、link支持使用Javascript控制DOM去改變樣式,而@import不支持。

c、link是XHTML標籤,除了加載CSS,還能夠定義RSS等其餘事務;@import屬於CSS範疇,只能加載CSS

d、link是XHTML標籤,無兼容問題;@import是在CSS 2.1提出的,低版本的瀏覽器不支持。

問:. CSS選擇符有哪些?哪些屬性能夠繼承?優先級算法如何計算?內聯和important哪一個優先級高?

標籤選擇符 類選擇符 id選擇符

繼承不如指定 Id>class>標籤選擇

important優先級高

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息