摘要:客戶端數(shù)據(jù)存儲,能維持在多個會話范圍內(nèi)。向元素開頭插入由參數(shù)指定的內(nèi)容。向匹配的元素添加指定的類名。移除指定的屬性。主要解決了中大量的操作使頁面渲染性能降低,加載速度變慢,影響用戶體驗。區(qū)別數(shù)據(jù)驅(qū)動,通過數(shù)據(jù)來顯示視圖層而不是節(jié)點操作。
css常用布局金三銀四 公司讓我面試 1年經(jīng)驗的前端,特此花時間研究了一番面試題,近日整理了一下想分享出來,讓更多小掘友看到,在我看來 這些基本都是必備的知識點
基本值 | flexbox | grid | table | float布局 |
---|---|---|---|---|
none | flex | grid | table | float-fixed |
inline | inline-flex | inline-grid | table-row | float-fluid |
block | table-cell | 960網(wǎng)格布局 | ||
inline-block |
水平間隙問題 這是因為編寫代碼時輸入空格、換行都會產(chǎn)生空白符。而瀏覽器是不會忽略空白符的,并且對于多個連續(xù)的空白符自動合并成一個,故產(chǎn)生了所謂的間隙。
一般來說我們有兩種方法來去掉這個換行引起間隙: 代碼不換行 和 設(shè)置 font-size。
(推薦)通過設(shè)置父元素的 font-size 為 0 來去掉這個間隙,然后重置子元素的 font-size,讓其恢復(fù)子元素文字字符。 只要設(shè)置 inline-block 就要去間隙
float清除浮動詳解主要是為了解決由于浮動元素脫離文流導(dǎo)致的元素重疊或者父元素高度坍塌的問題
清除前面兄弟元素浮動
清除前面兄弟元素浮動很簡單,只需要在不想受到浮動元素影響的元素上使用 clear:both 即可
閉合子元素浮動
給元素設(shè)置 clearfix 常用
通過父元素的偽元素(::after)實現(xiàn)的著名 clearfix 方法,代碼如下:
"container clearfix">
"box">
.clearfix::after {
content:"";
display:table;
clear: both;
}
給父元素增加一個專門用于處理閉合子元素浮動的 clearfix 類名,該類使用 ::after 偽元素類選擇器增加一個內(nèi)容為空的結(jié)構(gòu)來清除浮動.
給父元素新建一個 BFC(塊格式化上下文)
實現(xiàn)一個彈窗 全屏居中的效果。
div使用絕對布局,設(shè)置 margin:auto; 并設(shè)置 top、left、right、bottom 的值相等即可,不一定要都是0。
.center{
text-align: center; /*讓div內(nèi)部文字居中*/
background-color: #fff;
border-radius: 20px;
width: 300px;
height: 350px;
margin: auto;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
}
絕對布局,讓left和top都是50%,這在水平方向上讓div的最左與屏幕的最左相距50%,垂直方向上一樣,所以再用transform向左(上)平移它自己寬度(高度)的50%,也就達(dá)到居中效果了,效果圖和上方相同。
.center{
text-align: center;
background-color: #fff;
border-radius: 20px;
width: 300px;
height: 350px;
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%,-50%);
}
說下幾種常用選擇器
五大類選擇器:
基本選擇器
元素選擇(直接獲取元素名 P、h1)【過于直接】
ID選擇(#id)【取值唯一不能復(fù)用】
類選擇(.class)【組合、復(fù)用】
* 通用選擇器(所有元素)
關(guān)系選擇器
偽類選擇器
:nth-child(n) : n可以是數(shù)字(4)、關(guān)鍵詞(old,even)或公式(2n+1)
:active: 將樣式添加到被激活的元素
:focus: 將樣式添加到被選中的元素
:hover: 鼠標(biāo)懸浮在元素上時 添加樣式
:link: 添加到未被訪問過的鏈接
:visited 添加到被訪問過的鏈接
:first-child: 添加到元素的第一個子元素
:lang: 定義使用的語言
偽元素選擇器 :first-letter : 添加到文本的首字母 :first-line : 添加到文本的首行 :before : 某元素之前插入某些內(nèi)容 :after : 某元素之后插入某些內(nèi)容
屬性選擇器
HTML5 語義元素
HTML5 Web 存儲
sessionStorage: 客戶端數(shù)據(jù)存儲,只能維持在當(dāng)前會話范圍內(nèi)。
localStorage: 客戶端數(shù)據(jù)存儲,能維持在多個會話范圍內(nèi)。對象存儲的數(shù)據(jù)沒有時間限制。對于大量復(fù)雜數(shù)據(jù)結(jié)構(gòu),一般使用IndexDB
CSS3 多媒體查詢 @media all and(min-width:800px){...}
CSS3 轉(zhuǎn)換和變形:transform
CSS3 過渡:transition
CSS3 動畫:animation
最原始的js ,new XMLHttpRequest(); //由于瀏覽器兼容的原因,代碼復(fù)雜,多使用基于jQuery的異步請求方法(內(nèi)部封裝)
基于jQuery的Ajax方法:
Vue--axios (promise)
JS數(shù)組操作
concat() 鏈接兩個或更多的數(shù)組,并返回結(jié)果
join() 把數(shù)組通過指定分隔符進(jìn)行分割并拼接成一個字符串
pop() 刪除并返回數(shù)組的最后一個元素
push() 向數(shù)組的末尾添加一個或更多元素,并返回新長度
reverse() 反轉(zhuǎn)數(shù)組中元素的順序
Jq DOM選擇器、DOM文檔操作append() : 向元素結(jié)尾插入由參數(shù)指定的內(nèi)容。
prepend():向元素開頭插入由參數(shù)指定的內(nèi)容。
after() : 在匹配的元素之后插入內(nèi)容。
before(): 在每個匹配的元素之前插入內(nèi)容。
addClass():向匹配的元素添加指定的類名。
attr() :設(shè)置或返回匹配元素的屬性和值。
removeAttr():移除指定的屬性。
Vue框架的優(yōu)勢
MVVM: Model 層代表數(shù)據(jù)模型,也可以在Model中定義數(shù)據(jù)修改和操作的業(yè)務(wù)邏輯; View 代表UI 組件,它負(fù)責(zé)將數(shù)據(jù)模型轉(zhuǎn)化成UI 展現(xiàn)出來, ViewModel 是一個同步View 和 Model的對象。
mvc和mvvm其實區(qū)別并不大。都是一種設(shè)計思想。 主要就是mvc中Controller演變成mvvm中的viewModel。 mvvm主要解決了mvc中大量的DOM 操作使頁面渲染性能降低,加載速度變慢,影響用戶體驗。
區(qū)別 vue數(shù)據(jù)驅(qū)動,通過數(shù)據(jù)來顯示視圖層而不是節(jié)點操作。場景:數(shù)據(jù)操作比較多的場景,更加便捷
vue生命周期(詳解)
beforeCreate:初始化了部分參數(shù),如果有相同的參數(shù),做了參數(shù)合并,執(zhí)行beforeCreate;el和數(shù)據(jù)對象都為undefined,還未初始化;
created:初始化了 Inject、Provide 、props、methods、data、computed和watch,執(zhí)行created ;data有了,el還沒有;
beforeMount:檢查是否存在el屬性,存在的話進(jìn)行渲染dom操作,執(zhí)行beforeMount;$el和data都初始化了,但是dom還是虛擬節(jié)點,dom中對應(yīng)的數(shù)據(jù)還沒有替換;
mounted:實例化 Watcher,渲染dom,執(zhí)行mounted;vue實例掛載完成,dom中對應(yīng)的數(shù)據(jù)成功渲染;
beforeUpdate:在渲染dom 后,執(zhí)行了mounted 鉤子后,在數(shù)據(jù)更新的時候,執(zhí)行 beforeUpdate;
updated:檢查當(dāng)前的watcher列表中,是否存在當(dāng)前要更新數(shù)據(jù)的watcher,如果存在就執(zhí)行updated;
beforeDestroy:檢查是否已經(jīng)被卸載,如果已經(jīng)被卸載,就直接return出去,否則執(zhí)行beforeDestroy;
destroyed:把所有有關(guān)自己痕跡的地方,都給刪除掉;
git常用命令git clone: 下載初始化
Git add:添加
Git commit -m ‘ ’ :提交 帶消息
Git push:推送
Git pull: 拉取
前端1W左右的面試
轉(zhuǎn)載請標(biāo)注 出處謝謝~ 感覺有幫助的不妨圈起來,后期不定期發(fā)布前端知識
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/6890.html
摘要:主講人黎騰年加入騰訊,技術(shù)面試官引入面試是一個讓面試官認(rèn)識你的過程,盡全力展現(xiàn)的你就好,正常發(fā)揮沒通過再接再厲,失常發(fā)揮沒通過實為遺憾要求要求找準(zhǔn)定位,重視基礎(chǔ)前端發(fā)展日新月異,打牢基礎(chǔ)原生,才能以不變應(yīng)萬變?nèi)缧阅埽踩笥酶h(yuǎn)的視角去看 主講人:黎騰(Litten):13年加入騰訊, 技術(shù)面試官 1.引入 面試是一個讓面試官認(rèn)識你的過程,盡全力展現(xiàn)100%的你就好,正常發(fā)揮沒通過...
摘要:主講人黎騰年加入騰訊,技術(shù)面試官引入面試是一個讓面試官認(rèn)識你的過程,盡全力展現(xiàn)的你就好,正常發(fā)揮沒通過再接再厲,失常發(fā)揮沒通過實為遺憾要求要求找準(zhǔn)定位,重視基礎(chǔ)前端發(fā)展日新月異,打牢基礎(chǔ)原生,才能以不變應(yīng)萬變?nèi)缧阅?,安全要求用更遠(yuǎn)的視角去看 主講人:黎騰(Litten):13年加入騰訊, 技術(shù)面試官 1.引入 面試是一個讓面試官認(rèn)識你的過程,盡全力展現(xiàn)100%的你就好,正常發(fā)揮沒通過...
摘要:主講人黎騰年加入騰訊,技術(shù)面試官引入面試是一個讓面試官認(rèn)識你的過程,盡全力展現(xiàn)的你就好,正常發(fā)揮沒通過再接再厲,失常發(fā)揮沒通過實為遺憾要求要求找準(zhǔn)定位,重視基礎(chǔ)前端發(fā)展日新月異,打牢基礎(chǔ)原生,才能以不變應(yīng)萬變?nèi)缧阅?,安全要求用更遠(yuǎn)的視角去看 主講人:黎騰(Litten):13年加入騰訊, 技術(shù)面試官 1.引入 面試是一個讓面試官認(rèn)識你的過程,盡全力展現(xiàn)100%的你就好,正常發(fā)揮沒通過...
摘要:作者今年大三,在春招過程中參加了多家大公司的面試后,拿到了騰訊的前端實習(xí),在這里做一些總結(jié),希望給還未參加過實習(xí)面試的同學(xué)一些幫助。在之后的面試時就更加從容一些了。 作者今年大三,在春招過程中參加了多家大公司的面試后,拿到了騰訊的前端實習(xí) offer,在這里做一些總結(jié),希望給還未參加過實習(xí)面試的同學(xué)一些幫助。 一、簡歷的準(zhǔn)備 簡歷制作是很重要的一個環(huán)節(jié),一份好的簡歷會給面試官留下很不錯...
摘要:面試總結(jié)因為我是開發(fā),所以面試的都是后端開發(fā),只能總結(jié)一些這方面的題。因為我也沒有面試太多的公司,在小城市,沒有太多的大公司,所以總結(jié)的只有這些,希望想要換工作的人,提前準(zhǔn)備。 好久沒有更新文章了,不是因為偷懶,是因為忙著準(zhǔn)備面試了,現(xiàn)在總結(jié)下最近的面試心得,希望對大家有幫助 時刻準(zhǔn)備著 每次入職一個公司,我們都是想著一直干下去的,但是這只不過是我們的一廂情愿罷了,工作中有太多的不可控...
閱讀 778·2023-04-26 01:30
閱讀 3326·2021-11-24 10:32
閱讀 2213·2021-11-22 14:56
閱讀 2021·2021-11-18 10:07
閱讀 584·2019-08-29 17:14
閱讀 654·2019-08-26 12:21
閱讀 3134·2019-08-26 10:55
閱讀 2982·2019-08-23 18:09