国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

前端計(jì)劃——面試題總結(jié)-CSS篇

馬永翠 / 3402人閱讀

摘要:定位使元素的位置與文檔流無(wú)關(guān),因此不占據(jù)空間。可以知道屬性有以下幾個(gè)特點(diǎn)該元素并不脫離文檔流,仍然保留元素原本在文檔流中的位置。

前端面試之CSS篇 1、三種基本引入方式

外部樣式表

內(nèi)部樣式表



內(nèi)聯(lián)

這是一個(gè)段落。

2、CSS的引入方式中l(wèi)ink和@import的區(qū)別

link是XHTML標(biāo)簽,除了加載CSS外,還可以定義RSS等其他事務(wù);@import屬于CSS范疇,只能加載CSS。

link是XHTML標(biāo)簽,無(wú)兼容問(wèn)題;@import是在CSS2.1提出的,低版本的瀏覽器不支持。

link引用CSS時(shí),在頁(yè)面載入時(shí)同時(shí)加載;@import需要頁(yè)面網(wǎng)頁(yè)完全載入以后加載。

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

3、CSS選擇器

選擇器優(yōu)先級(jí)為!important >內(nèi)聯(lián) > id > 偽類(lèi) = 類(lèi)class > 屬性 > tag >通配

3.1 基本選擇器

類(lèi)選擇器 .className

ID選擇器 #idName

元素選擇器 elementName

通配選擇器 * (效率最低,不推薦用)

屬性選擇器 element[attr=value]

3.2 權(quán)重計(jì)算

內(nèi)聯(lián)樣式表的權(quán)值最高 1000;

ID 選擇器的權(quán)值為 100

Class 類(lèi)選擇器的權(quán)值為 10

HTML 標(biāo)簽選擇器的權(quán)值為 1

3.3 計(jì)算法則

選擇器都有一個(gè)權(quán)值,權(quán)值越大越優(yōu)先;

當(dāng)權(quán)值相等時(shí),后出現(xiàn)的樣式表設(shè)置要優(yōu)于先出現(xiàn)的樣式表設(shè)置;

創(chuàng)作者的規(guī)則高于瀏覽者:即網(wǎng)頁(yè)編寫(xiě)者設(shè)置的CSS 樣式的優(yōu)先權(quán)高于瀏覽器所設(shè)置的樣式;

繼承的CSS 樣式不如后來(lái)指定的CSS 樣式;

在同一組屬性設(shè)置中標(biāo)有"!important"規(guī)則的優(yōu)先級(jí)最大;示例如下:

3.4組合選擇符

后代選擇器(空格符)選取所有后代 A B

子元素選擇器 (大于號(hào))選擇某一類(lèi)型 A>B

相鄰兄弟選擇器 (加號(hào))A+B

普通兄弟選擇器 (波浪號(hào))A~B

4、偽元素與偽類(lèi) 4.1 偽類(lèi)

CSS偽類(lèi)匹配被用戶激活的元素,接偽類(lèi)先后順序被稱(chēng)為L(zhǎng)VHA順序:
:link
:visited
:hover
:active

4.2 偽元素

偽元素添加到選擇器,但不是描述特殊狀態(tài),它們?cè)试S您為元素的某些部分設(shè)置樣式(CSS3使用雙冒號(hào))
::after
::before
::first-letter
::first-line
::selection

5、盒式模型

margin/border/padding/content
margin:a,b,c,d 上/右/下/左
margin:a,b,c 上/左右/下
margin:a,b 上下/左右
margin:a 上下左右

6、定位的幾種方式:absolute/relative/fixed/static/sticky

absolute
絕對(duì)定位的元素的位置相對(duì)于最近的已定位父元素(也就是非static定位),如果元素沒(méi)有已定位的父元素,那么它的位置相對(duì)于。absolute 定位使元素的位置與文檔流無(wú)關(guān),因此不占據(jù)空間。

relative
相對(duì)定位是相對(duì)其正常位置。相對(duì)于其在普通流中的位置進(jìn)行定位。可以移動(dòng)的相對(duì)定位元素的內(nèi)容和相互重疊的元素,它原本所占的空間不會(huì)改變。經(jīng)常被用來(lái)做絕對(duì)定位的容器塊。

fixed
元素的位置相對(duì)于瀏覽器窗口是固定位置。Fixed定位使元素的位置與文檔流無(wú)關(guān),因此不占據(jù)空間。

static
HTML元素的默認(rèn)值,即沒(méi)有定位,元素出現(xiàn)在正常的流中。 靜態(tài)定位的元素不會(huì)受到 top, bottom, left, right影響。

sticky
position屬性中最有意思的就是sticky了,設(shè)置了sticky的元素,在屏幕范圍(viewport)時(shí)該元素的位置并不受到定位影響(設(shè)置是top、left等屬性無(wú)效),當(dāng)該元素的位置將要移出偏移范圍時(shí),定位又會(huì)變成fixed,根據(jù)設(shè)置的left、top等屬性成固定位置的效果。

可以知道sticky屬性有以下幾個(gè)特點(diǎn):

該元素并不脫離文檔流,仍然保留元素原本在文檔流中的位置。
當(dāng)元素在容器中被滾動(dòng)超過(guò)指定的偏移值時(shí),元素在容器內(nèi)固定在指定位置。亦即如果你設(shè)置了top: 50px,那么在sticky元素到達(dá)距離相對(duì)定位的元素頂部50px的位置時(shí)固定,不再向上移動(dòng)。
元素固定的相對(duì)偏移是相對(duì)于離它最近的具有滾動(dòng)框的祖先元素,如果祖先元素都不可以滾動(dòng),那么是相對(duì)于viewport來(lái)計(jì)算元素的偏移量

7、清除浮動(dòng)

浮動(dòng)元素脫離文檔流,不占據(jù)空間。浮動(dòng)元素碰到包含它的邊框或者浮動(dòng)元素的邊框停留。

額外標(biāo)簽
添加

使用overflow
給包含浮動(dòng)元素的父標(biāo)簽添加css屬性 overflow:auto; zoom:1; zoom:1用于兼容IE6。

使用after偽對(duì)象

#parent:after{
    /*注意content要有內(nèi)容*/
    content:".";
    height:0;
    visibility:hidden;
    display:block;
    clear:both;
}
8、display: none;和visibility: hidden;的區(qū)別

都是隱藏元素,但是前者文檔布局中不占用空間,后者仍占用空間

display:none隱藏產(chǎn)生reflow和repaint(回流與重繪)

前者有株連性,即父元素設(shè)置display: none后子元素不管怎樣設(shè)置都不能顯示,而后者的子元素通過(guò)設(shè)置visibility: visible后還是能顯示出來(lái)的

9、float和absolute的異同

相同點(diǎn):都使元素脫離文檔流,可以設(shè)置寬高

不同點(diǎn):float仍然占用空間,absolute可以覆蓋

10、box-sizing

屬性作用:主要用來(lái)控制元素的盒模型的解析模式。默認(rèn)值是content-box。

content-box
元素的寬度/高度由border + padding + content的寬度/高度決定,設(shè)置width/height屬性指的是content部分的寬/高

border-box
讓元素維持IE傳統(tǒng)盒模型(IE6以下版本和IE6~7的怪異模式)。設(shè)置width/height屬性指的是border + padding + content

inherit
繼承父元素的box-sizing屬性

11、左右布局:左邊定寬、右邊自適應(yīng),不少于3種方法
//方法一(使用CSS3的flex布局)
.container {
    width: 100%;
    display: flex;
    flex-flow: row nowrap;
}
.left {
    width: 200px;
    height: 200px;
    background: green;
}
.right {
    flex: 1;
    height: 200px;
    background: red;
}
//方法二(使用CSS3的calc(),注意clac表達(dá)式中的減號(hào)前后有空格)
.left {
    float: left;
    width: 200px;
    height: 200px;
    background: green;
}
.right {
    float: left;
    width: calc(100% - 200px);
    height: 200px;
    background: red;
}
//方法三(不設(shè)置寬度,默認(rèn)填充滿)
.left {
    float: left;
    width: 200px;
    height: 200px;
    background: green;
}
.right {
    margin-left: 200px;
    height: 200px;
    background: red;
}
//方法四(絕對(duì)定位,注意right部分)
.left {
    position: absolute;
    width: 200px;
    height: 200px;
    background: green;
}
.right {
    position: absolute;
    left: 200px;
    right: 0px;
    height: 200px;
    background: red;
}
//方法五(百分比width,這個(gè)方法不是很好使,百分比不好確定)
.left {
    float: left;
    width: 200px;
    height: 200px;
    background: green;
}
.right {
    float: left;
    width: 85%;
    height: 200px;
    background: red;
}
//方法六(表格方式,不推薦使用)
12、div水平垂直居中實(shí)現(xiàn)方式
/*方法一:使用flex布局*/
/*加入邊框和寬高便于瀏覽器測(cè)試*/
.parent {
    border: 1px solid black;
    display:flex;
    justify-content: center;
    align-items: center;
}
.child {
    border: 1px solid black;
    width: 400px;
    height: 400px;
}
/*方法二:絕對(duì)定位,左右都是50%,margin-left和top分別為自身一半值的負(fù)數(shù)*/
.parent {
    position: relative;
}
.child {
    border: 1px solid black;
    width: 400px;
    height: 200px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -200px;
    margin-top: -100px;
}
/*方法三:還是絕對(duì)定位,但使用transform*/
.parent{
    position: relative;
}
.child {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/112411.html

相關(guān)文章

  • 前端計(jì)劃——面試總結(jié)-HTML

    摘要:發(fā)生在很久以前的及更老的瀏覽器向過(guò)渡時(shí)期。數(shù)據(jù)始終在同源的請(qǐng)求中攜帶即使不需要,會(huì)在瀏覽器和服務(wù)器間來(lái)回傳遞。存儲(chǔ)大小數(shù)據(jù)大小不能超過(guò)。與上面問(wèn)題相連,比也是明智的選擇。表現(xiàn)與結(jié)構(gòu)相分離。兩種設(shè)計(jì)思想是有不同的考慮。 前言: 吾生也有涯,而知也無(wú)涯,以有涯隨無(wú)涯,殆己————莊子 閱讀本文前請(qǐng)做好以下心理準(zhǔn)備:本系列文章將不定期更新。本系列文章不是很?chē)?yán)謹(jǐn)。 前端面試之HTML篇 Pa...

    2json 評(píng)論0 收藏0
  • 前端開(kāi)發(fā)-從入門(mén)到Offer - 收藏集 - 掘金

    摘要:一些知識(shí)點(diǎn)有哪些方法方法前端從入門(mén)菜鳥(niǎo)到實(shí)踐老司機(jī)所需要的資料與指南合集前端掘金前端從入門(mén)菜鳥(niǎo)到實(shí)踐老司機(jī)所需要的資料與指南合集歸屬于筆者的前端入門(mén)與最佳實(shí)踐。 工欲善其事必先利其器-前端實(shí)習(xí)簡(jiǎn)歷篇 - 掘金 有幸認(rèn)識(shí)很多在大廠工作的學(xué)長(zhǎng),在春招正式開(kāi)始前為我提供很多內(nèi)部推薦的機(jī)會(huì),非常感謝他們對(duì)我的幫助。現(xiàn)在就要去北京了,對(duì)第一份正式的實(shí)習(xí)工作也充滿期待,也希望把自己遇到的一些問(wèn)題和...

    sf_wangchong 評(píng)論0 收藏0
  • 前端最強(qiáng)面經(jīng)匯總

    摘要:獲取的對(duì)象范圍方法獲取的是最終應(yīng)用在元素上的所有屬性對(duì)象即使沒(méi)有代碼,也會(huì)把默認(rèn)的祖宗八代都顯示出來(lái)而只能獲取元素屬性中的樣式。因此對(duì)于一個(gè)光禿禿的元素,方法返回對(duì)象中屬性值如果有就是據(jù)我測(cè)試不同環(huán)境結(jié)果可能有差異而就是。 花了很長(zhǎng)時(shí)間整理的前端面試資源,喜歡請(qǐng)大家不要吝嗇star~ 別只收藏,點(diǎn)個(gè)贊,點(diǎn)個(gè)star再走哈~ 持續(xù)更新中……,可以關(guān)注下github 項(xiàng)目地址 https:...

    wangjuntytl 評(píng)論0 收藏0
  • 2017年3月份前端資源分享

    平日學(xué)習(xí)接觸過(guò)的網(wǎng)站積累,以每月的形式發(fā)布。2017年以前看這個(gè)網(wǎng)址:http://www.kancloud.cn/jsfron... 03月份前端資源分享 1. Javascript 175453545 Redux compose and middleware 源碼分析 深入 Promise(二)——進(jìn)擊的 Promise Effective JavaScript leeheys blog -...

    ermaoL 評(píng)論0 收藏0
  • 2017年3月份前端資源分享

    平日學(xué)習(xí)接觸過(guò)的網(wǎng)站積累,以每月的形式發(fā)布。2017年以前看這個(gè)網(wǎng)址:http://www.kancloud.cn/jsfron... 03月份前端資源分享 1. Javascript 175453545 Redux compose and middleware 源碼分析 深入 Promise(二)——進(jìn)擊的 Promise Effective JavaScript leeheys blog -...

    kamushin233 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<