web前端js面試題及參考答案
1.WEB標準以及W3C標準是什麼?
標籤閉合、標籤小寫、不亂巢狀、使用外鏈css和js、結構行為表現的分離。
1.1div中img怎麼水平和垂直居中?
Div{width:200px; height:200px;text-align:center; font-size:0; overflow: hidden;line-height:200px; _line-height:178px;/*相容IE6*/ }
Img{ vertical-align:middle;}
1.2 HTML中沒有單位的屬性是?
z-index:1; zoom:1; font-weight:200;
1.3 form表單中input標籤的readonly 和disabled屬性有何區別?
readonly=“readonly”是隻讀,不可以修改, disabled=“disabled”是禁用,整個文字框是顯示灰色狀態
form 中method是資料傳遞的方式,action是與後臺資料庫提交的
2.xhtml和html有什麼區別
XHTML 元素必須被正確地巢狀,閉合,區分大小寫,文件必須擁有根元素。
3.行內元素有哪些?塊級元素有哪些?
行內元素: a b img em br i span input select
塊級元素:div p h1-h6 form ul dl ol table
4.行內元素和塊級元素有什麼區別?
行內元素不可以設定寬高,不獨佔一行;
塊級元素可以設定寬高,獨佔一行。
5.我想讓行內元素跟上面的元素距離10px,加margin-top和padding-top可以嗎? margin-top,padding-top無效
6.CSS的盒模型由什麼組成?
內容(width,height),border ,margin,padding
6.1 簡述div+css佈局的優勢?
(1)符合w3c標準;(2)相容性好;(3)有利於搜尋引擎很友好;(4)樣式的調整更加方便;(5)css簡潔的程式碼,能使樣式和結構分離;
7.說說display屬性有哪些?可以做什麼?
display:block行內元素轉換為塊級元素
display:inline塊級元素轉換為行內元素
display:inline-block轉為內聯元素
display:box(css3新增的彈性佈局屬性)
8.CSS 選擇符有哪些?
1.id選擇器( # myid)
2.類選擇器(.myclassname)
3.標籤選擇器(div, h1, p)
4.相鄰選擇器(h1 + p)
5.子選擇器(ul < li)
6.後代選擇器(li a)
7.萬用字元選擇器( * )
8.屬性選擇器(a[rel = "external"])
9.偽類選擇器(a: hover, li: nth - child)
9.哪些css屬性可以繼承?
可繼承: font-size font-family color, ul li dl dd dt;(字型屬性和列表屬性)
不可繼承 :border padding margin width height ;
10.css優先順序演算法如何計算?
!important > id > class > 標籤
!important 比 內聯優先順序高
* 優先順序就近原則,樣式定義最近者為準;
* 以最後載入的樣式為準;
11.text-align:center和line-height有什麼區別?
text-align是水平對齊,line-height是行間。
12.前端頁面由哪三層構成,分別是什麼?作用是什麼?
結構層 Html(頁面結構內容,骨架) 表示層 CSS(網頁的樣式和外觀) 行為層 js(實現網頁的互動,動畫效果)
13.標籤上title與alt屬性的區別是什麼?
Alt是圖片屬性,讓搜尋引擎認識你的圖片。當圖片不顯示的時候顯示。
title是網站標題,是seo中最重要的屬性。
14.使用css 精靈有什麼優缺點?
優: Css 精靈 把一堆小的圖片整合到一張大的圖片上,減輕HTTP的請求數量(HTTP連線數對網站的載入效能有重要影響)。能夠提升網站效能
缺:可維護性方面,如要改變區域性一張小圖,就要很繁瑣,而且算圖片的位置也很麻煩;
15.什麼是語義化的HTML?
標籤使用的合理性,對於搜尋引擎的抓取有好處。
16.b標籤和strong標籤,i標籤和em標籤的區別?
後者有語義,前者則無。
17.tite與h1的區別。
title側重於網站資訊標題
從文章而言,h1側重於文章主題
站在seo的角度看,好網站少不了title,好文章少不了h1標題,title權重高於h1。
18.清除浮動的幾種方式,各自的優缺點
1.使用空標籤清除浮動clear:both(缺點,增加無意義的標籤)
2.使用overflow:auto(使用zoom:1用於相容IE)或:overflow:hidden;
3.是用afert偽元素清除浮動(用於非IE瀏覽器)
.Clearfix:after{ content:””; display:block; height:0; overflow:hidden; clear:both;} .clearfix{ zoom:1;}
18.1 HTML doctype 有哪些常用的型別?
HTML4.01 XHTML1.0 HTML5 18.2 什麼是css hack?(怎麼讓css很好的相容各主流瀏覽器)
,CSS hack的目的就是使你的CSS程式碼相容不同的瀏覽器。當然,我們也可以反過來利用CSS hack為不同版本的瀏覽器定製編寫不同的CSS效果。
有三種表達方式:(1).css內部hack:主要針對類內部的hack,比如IE6能識別“_”“*”,IE7能識別“*”等(也叫類內屬性字首法);(2).選擇器hack:例如IE6能*html .class{}; IE7能識別 *+html .class{}(也叫選擇器字首法); (3)html頭部引用(if IE)hack:針對所有IE:,針對IE6及以下版本:,這類Hack不僅對CSS生效,對寫在判斷語句裡面的所有程式碼都會生效(也叫條件註釋法)。
18.3請簡述css載入方式link和@import的區別?
1. link屬於XHTML標籤,而@import完全是CSS提供的一種方式。
2.載入順序的差別:前者在頁面載入的時候就同時載入進來,而後者是在頁面完全載入完再載入
3.相容性的差別:前者可以相容全部,後者只有在IE5以上才能被識別;
4. 使用JavaScript DOM控制樣式的差別:只能控制link標籤,不能控制@import
19.display:none和visibility:hidden的區別是什麼?
visibility: hidden----將元素隱藏,但是還佔著位置。
display: none----將元素的顯示設為無,不佔任何的位置。
19.1五大瀏覽器的核心
火狐:-moz- IE:-ms- 歐朋:-o- 谷歌和蘋果:-webkit-
20.說出幾種IE6 BUG的解決方法
1.雙邊距BUG float引起的 解決:使用display:inline
2.3畫素問題 使用float引起的 解決:使用dislpay:inline -3px
3.超連結hover 點選後失效 解決:使用正確的書寫順序 link visited hover active
4.Ie z-index問題 解決:給父級新增position:relative
5.Png 透明 解決:使用js程式碼
6.Min-height 最小高度 !Important 解決
7.img出現邊框 border:none;
8.為什麼沒有辦法定義1px左右的寬度容器(IE6預設的行高造成的overflow:hidden,zoom:0.08 line-height:1px可以解決)
21.域名和伺服器相關知識?
22.HTTP狀態碼都有那些。
200 OK //客戶端請求成功
400 Bad Request //客戶端請求有語法錯誤,不能被伺服器所理解
403 Forbidden //伺服器收到請求,但是拒絕提供服務
404 Not Found //請求資源不存在,輸入了錯誤的URL
500 Internal Server Error //伺服器發生不可預期的錯誤
503 Server Unavailable //伺服器當前不能處理客戶端的請求,一段時間後可能恢復正常
23.如何優化網頁載入速度?
1.減少css,js檔案數量及大小(減少重複性程式碼,程式碼重複利用),壓縮CSS和Js程式碼
2.圖片的大小
3.把css樣式表放置頂部,把js放置頁面底部
4.減少http請求數
5.使用外部 Js 和 CSS
24.position屬性absolute與relative的區別?
absolute絕對定位 //相對於瀏覽器定位
relative相對定位 //相對於前面的容器定位
25.HTML5 的有那些新標籤?
頭部導航連結側邊欄列表內容腳部圖片塊容器 25.1 HTML5有哪些新特性?
用於繪畫的 canvas 元素
•用於媒介回放的 video 和 audio 元素
•對本地離線儲存的更好的支援
•新的特殊內容元素,比如 article、footer、header、nav、section
•新的表單控制元件,比如 calendar、date、time、email、url、search
25.2 HTML5有哪些新的API?
1. 選擇器:querySelector,querySelectorAll
document. querySelectorAll(“.head”);
2. Canvas API:有關動態產出與渲染圖形、圖表、影象和動畫的API。
3. 音訊與視訊 API。
4. 離線儲存API
5. 通訊API
6. 檔案操作
7. 地理位置API
8. 拖放API