1.漸進(jìn)增強
web設(shè)計時強調(diào)可訪問性,語義化HTML標(biāo)簽,外部樣式表和腳本,保證所有人都能訪問頁面的基本內(nèi)容和功能,同時為高級瀏覽器和高寬帶用戶提供更好的用戶體驗
- 所有瀏覽器都必須能訪問基本內(nèi)容
- 所有瀏覽器都必須使用基本功能
- 所有內(nèi)容都包含在語義化標(biāo)簽中
- 通過外部css提供增強的布局
- 通過非侵入式,外部js提供增強功能
2.狀態(tài)碼及其含義
- 1XX 信息狀態(tài)碼
- 2XX 成功狀態(tài)碼
- 3XX 重定向
- 4XX 客戶端錯誤
- 5XX 服務(wù)器錯誤
3.css hack原理
利用不同瀏覽器對css的支持和解析結(jié)果不一樣,編寫針對特定瀏覽器樣式
- IE條件注釋,適用于IE5-IE9
<!--[if IE 6]>
<![endif]-->
- 選擇器hack
4.link和import的區(qū)別
- link是HTML方式,@import是css方式
- link可以最大限度支持并行下載,@import是同步下載
- 瀏覽器對link的支持早于@import
- @import必須在樣式規(guī)則前,可以在css文件中引用其他文件
- link優(yōu)于@import
5.圖片格式選擇
GIF
- 無損壓縮
- 支持簡單動畫
- 支持透明
JPEG
- 有損壓縮
- 可控制壓縮質(zhì)量
- 不支持透明
- 適合照片
PNG
- 支持透明,無動畫
- 無損壓縮
- 適合圖標(biāo)背景,按鈕
6.css不繼承屬性
- 文本屬性
vertical-align 垂直文本對其
text-decoration 文本修飾
text-shadow 文本陰影 - 盒子模型屬性
width, height, margin, padding - 背景屬性
background - 定位屬性
float, clear, position, overflow, z-index
7.兼容opacity
使用IE5-IE8的filter濾鏡來實現(xiàn),濾鏡中的是透明度
.opacity{
opacity: 0.4;
filter: alpha(opacity=60);
}
8.使用偽元素清除浮動的原理
display: table為了防止容器和子元素的垂直外邊距合并
9.BFC
創(chuàng)建規(guī)則:
- 根元素
- 浮動元素
- 絕對定位元素
- display取值為inline-block
- overflow不是visible的元素
作用:
- 可以包含浮動元素
- 不被浮動元素覆蓋
- 給父元素創(chuàng)建BFC,阻止父子元素的margin折疊
10.圖片hack
可以為圖片添加偽元素,正常情況下img是替換元素,當(dāng)圖片無法正常加載時,就會顯示圖片的偽元素,可以設(shè)置其絕對定位和寬高,提供友好的加載失敗提示
不兼容蘋果瀏覽器,可以配合懶加載,
11.圖片懶加載的原理
將頁面中所有img的src屬性用data-src代替,當(dāng)頁面滾動到此圖片出現(xiàn)在可視區(qū)時,用js取到圖片的data-src賦值給src屬性
12.defer屬性
HTML5規(guī)范要求腳本按他們出現(xiàn)的先后順序執(zhí)行,defer腳本也會先于DOMContentLoaded事件執(zhí)行,現(xiàn)在的執(zhí)行情況是,執(zhí)行延時腳本不一定會按照順序執(zhí)行,也不一定會DOMContentLoaded事件執(zhí)行觸發(fā)前執(zhí)行