持續更新中...
面試傳送門:
關於HTML+CSS不是重點,所以只需簡單的瞭解下就好了,不必深入研究
001.Flex佈局
Flex(Flexible Box)佈局 稱為 "彈性佈局",可以為網頁的佈局提供最大的靈活性,取代了往常的 浮動(float) 佈局,並且任何一個容器都可以設定 Flex 佈局。
注:設定 Flex 佈局後,子元素的 Float 佈局將失效
Flex 佈局教程
002.HTML5+CSS3新特性
003.盒子模型
標準盒子模型、IE盒子模型
CSS 盒子模型
004.如何讓一個div水平居中?
005.如何讓一個div水平垂直居中?
006.如何清除浮動?
通常在公共的css樣式中定義一個清除浮動的類。
.clearfix{
clear:both;
content:'';
display:block;
width: 0;
height: 0;
visibility:hidden;
}
複製程式碼
007.css3實現三欄佈局,左右固定,中間自適應?
聖盃佈局/雙飛翼佈局
<style>
* {
margin: 0;
padding: 0;
}
.middle,
.left,
.right {
position: relative;
float: left;
min-height: 130px;
}
.container {
padding: 0 220px 0 200px;
overflow: hidden;
}
.left {
margin-left: -100%;
left: -200px;
width: 200px;
background: red;
}
.right {
margin-left: -220px;
right: -220px;
width: 220px;
background: green;
}
.middle {
width: 100%;
background: blue;
word-break: break-all;
}
</style>
</head>
<body>
<div class='container'>
<div class='middle'></div>
<div class='left'></div>
<div class='right'></div>
</div>
</body>
複製程式碼
008.CSS中 link 和@import 的區別是什麼?
- link屬於HTML標籤,而@import是CSS提供的頁面被載入的時,link會同時被載入,而@import引用的CSS會等到頁面被載入完再載入
- import只在IE5以上才能識別,而link是HTML標籤,無相容問題
- link方式的樣式的權重 高於@import的權重.
009.transition和animation的區別?
Animation和transition大部分屬性是相同的,他們都是隨時間改變元素的屬性值,他們的主要區別是transition需要觸發一個事件才能改變屬性, 而animation不需要觸發任何事件的情況下才會隨時間改變屬性值,並且transition為2幀,從from .... to,而animation可以一幀一幀的。
010.CSS優先順序?
不同級別:總結排序:!important > 行內樣式>ID選擇器 > 類選擇器 > 標籤 > 萬用字元 > 繼承 > 瀏覽器預設屬性
1.屬性後面加!import 會覆蓋頁面內任何位置定義的元素樣式
2.作為style屬性寫在元素內的樣式
3.id選擇器
4.類選擇器
5.標籤選擇器
6.萬用字元選擇器(*)
7.瀏覽器自定義或繼承
**同一級別:後寫的會覆蓋先寫的**
複製程式碼
011.使元素消失的方法?
visibility:hidden、display:none、z-index=-1、opacity:0
1.opacity:0,該元素隱藏起來了,但不會改變頁面佈局,並且,如果該元素已經繫結了一些事件,如click事件也能觸發
2.visibility:hidden,該元素隱藏起來了,但不會改變頁面佈局,但是不會觸發該元素已經繫結的事件
3.display:node, 把元素隱藏起來,並且會改變頁面佈局,可以理解成在頁面中把該元素刪掉
012.為什麼css放在頂部而js寫在後面?
1.瀏覽器預先載入css後,可以不必等待HTML載入完畢就可以渲染頁面了
2.其實HTML渲染並不會等到完全載入完在渲染頁面,而是一邊解析DOM一邊渲染。
3.js寫在尾部,主要是因為js主要扮演事件處理的功能,一方面很多操作是在頁面渲染後才執行的。另一方面可以節省載入時間,使頁面能夠更加的載入,提高使用者的良好體驗
但是隨著JS技術的發展,JS也開始承擔頁面渲染的工作。比如我們的UI其實可以分被對待,把渲染頁面的js放在前面,時間處理的js放在後面
013.理解BFC嗎?
BFC 即 Block Formatting Contexts (塊級格式化上下文)。
具有 BFC 特性的元素可以看作是隔離了的獨立容器,容器裡面的元素不會在佈局上影響到外面的元素,並且 BFC 具有普通容器所沒有的一些特性。
通俗一點來講,可以把 BFC 理解為一個封閉的大箱子,箱子內部的元素無論如何翻江倒海,都不會影響到外部。
014.Less、sass等的使用方法
Less和sass等是 CSS 預處理語言,它擴充套件了 CSS 語言,增加了變數、Mixin、函式等特性和巢狀寫法,使 CSS 更易維護和擴充套件。
015.簡單說一下網頁的層疊等級(z-index)?
其實一個網頁是分為好多層的,具體層次和層疊等級如下圖: