成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

前端面試題2(CSS)

MangoGoing / 1994人閱讀

摘要:在元素之后添加內(nèi)容控制表單控件的禁用狀態(tài)。生成相對(duì)定位的元素,相對(duì)于其正常位置進(jìn)行定位。由于浮動(dòng)框不在文檔的普通流中,所以文檔的普通流的塊框表現(xiàn)得就像浮動(dòng)框不存在一樣。

前端面試之CSS

display: none; 與 visibility: hidden; 的區(qū)別

聯(lián)系:它們都能讓元素不可見

區(qū)別:

display:none;會(huì)讓元素完全從渲染樹中消失,渲染的時(shí)候不占據(jù)任何空間;visibility: hidden;不會(huì)讓元素從渲染樹消失,渲染師元素繼續(xù)占據(jù)空間,只是內(nèi)容不可見

display: none;是非繼承屬性,子孫節(jié)點(diǎn)消失由于元素從渲染樹消失造成,通過修改子孫節(jié)點(diǎn)屬性無法顯示;visibility:hidden;是繼承屬性,子孫節(jié)點(diǎn)消失由于繼承了hidden,通過設(shè)置visibility: visible;可以讓子孫節(jié)點(diǎn)顯式

修改常規(guī)流中元素的display通常會(huì)造成文檔重排。修改visibility屬性只會(huì)造成本元素的重繪

讀屏器不會(huì)讀取display: none;元素內(nèi)容;會(huì)讀取visibility: hidden元素內(nèi)容

css hack原理及常用hack

原理:利用不同瀏覽器對(duì)CSS的支持和解析結(jié)果不一樣編寫針對(duì)特定瀏覽器樣式。

常見的hack有

屬性hack

選擇器hack

IE條件注釋

link 與 @import 的區(qū)別

linkHTML方式, @importCSS方式

link 最大限度支持并行下載, @import 過多嵌套導(dǎo)致串行下載,出現(xiàn)FOUC

link 可以通過 rel="alternate stylesheet" 指定候選樣式

瀏覽器對(duì) link 支持早于 @import ,可以使用 @import 對(duì)老瀏覽器隱藏樣式

@import 必須在樣式規(guī)則之前,可以在css文件中引用其他文件

總體來說:link優(yōu)于@import

CSS有哪些繼承屬性

關(guān)于文字排版的屬性如:

font

word-break

letter-spacing

text-align

text-rendering

word-spacing

white-space

text-indent

text-transform

text-shadow

line-height

color

visibility

cursor

外邊距折疊(collapsing margins)

毗鄰的兩個(gè)或多個(gè) margin 會(huì)合并成一個(gè)margin,叫做外邊距折疊。規(guī)則如下:

兩個(gè)或多個(gè)毗鄰的普通流中的塊元素垂直方向上的margin會(huì)折疊

浮動(dòng)元素或inline-block元素或絕對(duì)定位元素的margin不會(huì)和垂直方向上的其他元素的margin折疊

創(chuàng)建了塊級(jí)格式化上下文的元素,不會(huì)和它的子元素發(fā)生margin折疊

元素自身的margin-bottommargin-top相鄰時(shí)也會(huì)折

介紹一下標(biāo)準(zhǔn)的CSS的盒子模型?低版本IE的盒子模型有什么不同的?

有兩種, IE 盒子模型、W3C 盒子模型;

盒模型: 內(nèi)容(content)、填充(padding)、邊界(margin)、 邊框(border);

區(qū) 別: IE的content部分把 border 和 padding計(jì)算了進(jìn)去;

CSS選擇符有哪些?哪些屬性可以繼承?

id選擇器( # myid)

類選擇器(.myclassname)

標(biāo)簽選擇器(div, h1, p)

相鄰選擇器(h1 + p)

子選擇器(ul > li)

后代選擇器(li a)

通配符選擇器( * )

屬性選擇器(a[rel = "external"])

偽類選擇器(a:hover, li:nth-child)

可繼承的樣式: font-size font-family color, UL LI DL DD DT

不可繼承的樣式:border padding margin width height

CSS優(yōu)先級(jí)算法如何計(jì)算?

優(yōu)先級(jí)就近原則,同權(quán)重情況下樣式定義最近者為準(zhǔn)

載入樣式以最后載入的定位為準(zhǔn)

優(yōu)先級(jí)為: !important > id > class > tag important 比 內(nèi)聯(lián)優(yōu)先級(jí)高

CSS3新增偽類有那些?

p:first-of-type 選擇屬于其父元素的首個(gè) 

元素的每個(gè)

元素。 p:last-of-type 選擇屬于其父元素的最后

元素的每個(gè)

元素。 p:only-of-type 選擇屬于其父元素唯一的

元素的每個(gè)

元素。 p:only-child 選擇屬于其父元素的唯一子元素的每個(gè)

元素。 p:nth-child(2) 選擇屬于其父元素的第二個(gè)子元素的每個(gè)

元素。 :after 在元素之前添加內(nèi)容,也可以用來做清除浮動(dòng)。 :before 在元素之后添加內(nèi)容 :enabled :disabled 控制表單控件的禁用狀態(tài)。 :checked 單選框或復(fù)選框被選中

如何居中div?如何居中一個(gè)浮動(dòng)元素?如何讓絕對(duì)定位的div居中?

div設(shè)置一個(gè)寬度,然后添加margin:0 auto屬性

div{
    width:200px;
    margin:0 auto;
 }

居中一個(gè)浮動(dòng)元素

//確定容器的寬高 寬500 高 300 的層
//設(shè)置層的外邊距

 .div {
      width:500px ; height:300px;//高度可以不設(shè)
      margin: -150px 0 0 -250px;
      position:relative;         //相對(duì)定位
      background-color:pink;     //方便看效果
      left:50%;
      top:50%;
 }

讓絕對(duì)定位的div居中

  position: absolute;
  width: 1200px;
  background: none;
  margin: 0 auto;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;

display有哪些值?說明他們的作用

block 象塊類型元素一樣顯示。

none 缺省值。象行內(nèi)元素類型一樣顯示。

inline-block 象行內(nèi)元素一樣顯示,但其內(nèi)容象塊類型元素一樣顯示。

list-item 象塊類型元素一樣顯示,并添加樣式列表標(biāo)記。

table 此元素會(huì)作為塊級(jí)表格來顯示

inherit 規(guī)定應(yīng)該從父元素繼承 display 屬性的值

position的值relative和absolute定位原點(diǎn)是?

absolute

生成絕對(duì)定位的元素,相對(duì)于值不為 static的第一個(gè)父元素進(jìn)行定位。

fixed (老IE不支持)

生成絕對(duì)定位的元素,相對(duì)于瀏覽器窗口進(jìn)行定位。

relative

生成相對(duì)定位的元素,相對(duì)于其正常位置進(jìn)行定位。

static

默認(rèn)值。沒有定位,元素出現(xiàn)在正常的流中(忽略 top, bottom, left, right - z-index 聲明)。

inherit

規(guī)定從父元素繼承 position 屬性的值

CSS3有哪些新特性?

新增各種CSS選擇器 (: not(.input):所有 class 不是“input”的節(jié)點(diǎn))

圓角 (border-radius:8px)

多列布局 (multi-column layout)

陰影和反射 (ShadowReflect)

文字特效 (text-shadow、)

文字渲染 (Text-decoration)

線性漸變 (gradient)

旋轉(zhuǎn) (transform)

增加了旋轉(zhuǎn),縮放,定位,傾斜,動(dòng)畫,多背景

transform:scale(0.85,0.90) translate(0px,-30px) skew(-9deg,0deg)Animation:

用純CSS創(chuàng)建一個(gè)三角形的原理是什么?

// 把上、左、右三條邊隱藏掉(顏色設(shè)為 transparent)
#demo {
  width: 0;
  height: 0;
  border-width: 20px;
  border-style: solid;
  border-color: transparent transparent red transparent;
}

一個(gè)滿屏 品 字布局 如何設(shè)計(jì)?

簡(jiǎn)單的方式:

上面的div寬100%,

下面的兩個(gè)div分別寬50%,

然后用float或者inline使其不換行即可

經(jīng)常遇到的瀏覽器的兼容性有哪些?原因,解決方法是什么,常用hack的技巧 ?

png24位的圖片在iE6瀏覽器上出現(xiàn)背景,解決方案是做成PNG8.

瀏覽器默認(rèn)的margin和padding不同。解決方案是加一個(gè)全局的*{margin:0;padding:0;}來統(tǒng)一

IE下,可以使用獲取常規(guī)屬性的方法來獲取自定義屬性,也可以使用getAttribute()獲取自定義屬性;

Firefox下,只能使用getAttribute()獲取自定義屬性。

解決方法:統(tǒng)一通過getAttribute()獲取自定義屬性

IE下,even對(duì)象有x,y屬性,但是沒有pageX,pageY屬性

Firefox下,event對(duì)象有pageX,pageY屬性,但是沒有x,y屬性

li與li之間有看不見的空白間隔是什么原因引起的?有什么解決辦法?

行框的排列會(huì)受到中間空白(回車空格)等的影響,因?yàn)榭崭褚矊儆谧址?這些空白也會(huì)被應(yīng)用樣式,占據(jù)空間,所以會(huì)有間隔,把字符大小設(shè)為0,就沒有空格了

為什么要初始化CSS樣式

因?yàn)闉g覽器的兼容問題,不同瀏覽器對(duì)有些標(biāo)簽的默認(rèn)值是不同的,如果沒對(duì)CSS初始化往往會(huì)出現(xiàn)瀏覽器之間的頁(yè)面顯示差異

對(duì)BFC規(guī)范(塊級(jí)格式化上下文:block formatting context)的理解?

一個(gè)頁(yè)面是由很多個(gè) Box 組成的,元素的類型和 display 屬性,決定了這個(gè) Box 的類型

不同類型的 Box,會(huì)參與不同的 Formatting Context(決定如何渲染文檔的容器),因此Box內(nèi)的元素會(huì)以不同的方式渲染,也就是說BFC內(nèi)部的元素和外部的元素不會(huì)互相影響

css定義的權(quán)重

// 以下是權(quán)重的規(guī)則:標(biāo)簽的權(quán)重為1,class的權(quán)重為10,id的權(quán)重為100,以下/// 例子是演示各種定義的權(quán)重值:

/*權(quán)重為1*/
div{
}
/*權(quán)重為10*/
.class1{
}
/*權(quán)重為100*/
#id1{
}
/*權(quán)重為100+1=101*/
#id1 div{
}
/*權(quán)重為10+1=11*/
.class1 div{
}
/*權(quán)重為10+10+1=21*/
.class1 .class2 div{
}

// 如果權(quán)重相同,則最后定義的樣式會(huì)起作用,但是應(yīng)該避免這種情況出現(xiàn)

display:inline-block 什么時(shí)候會(huì)顯示間隙?(攜程)

移除空格、使用margin負(fù)值、使用font-size:0、letter-spacing、word-spacing

談?wù)劯?dòng)和清除浮動(dòng)

浮動(dòng)的框可以向左或向右移動(dòng),直到他的外邊緣碰到包含框或另一個(gè)浮動(dòng)框的邊框?yàn)橹埂S捎诟?dòng)框不在文檔的普通流中,所以文檔的普通流的塊框表現(xiàn)得就像浮動(dòng)框不存在一樣。浮動(dòng)的塊框會(huì)漂浮在文檔普通流的塊框上

介紹一下標(biāo)準(zhǔn)的CSS的盒子模型?低版本IE的盒子模型有什么不同的?

盒子模型構(gòu)成:內(nèi)容(content)、內(nèi)填充(padding)、 邊框(border)、外邊距(margin)

IE8及其以下版本瀏覽器,未聲明 DOCTYPE,內(nèi)容寬高會(huì)包含內(nèi)填充和邊框,稱為怪異盒模型(IE盒模型)

標(biāo)準(zhǔn)(W3C)盒模型:元素寬度 = width + padding + border + margin

怪異(IE)盒模型:元素寬度 = width + margin

標(biāo)準(zhǔn)瀏覽器通過設(shè)置 css3 的 box-sizing: border-box 屬性,觸發(fā)“怪異模式”解析計(jì)算寬高

box-sizing 常用的屬性有哪些?分別有什么作用?

box-sizing: content-box; // 默認(rèn)的標(biāo)準(zhǔn)(W3C)盒模型元素效果

box-sizing: border-box; // 觸發(fā)怪異(IE)盒模型元素的效果

box-sizing: inherit; // 繼承父元素 box-sizing 屬性的值

CSS選擇器有哪些?

id選擇器 #id

類選擇器 .class

標(biāo)簽選擇器 div, h1, p

相鄰選擇器 h1 + p

子選擇器 ul > li

后代選擇器 li a

通配符選擇器 *

屬性選擇器 a[rel="external"]

偽類選擇器 a:hover, li:nth-child

CSS哪些屬性可以繼承?哪些屬性不可以繼承?

可以繼承的樣式:font-size、font-family、color、list-style、cursor

不可繼承的樣式:width、height、border、padding、margin、background

CSS如何計(jì)算選擇器優(yōu)先?

相同權(quán)重,定義最近者為準(zhǔn):行內(nèi)樣式 > 內(nèi)部樣式 > 外部樣式

含外部載入樣式時(shí),后載入樣式覆蓋其前面的載入的樣式和內(nèi)部樣式

選擇器優(yōu)先級(jí): 行內(nèi)樣式[1000] > id[100] > class[10] > Tag[1]

在同一組屬性設(shè)置中,!important 優(yōu)先級(jí)最高,高于行內(nèi)樣式

CSS3新增偽類有哪些?

:root 選擇文檔的根元素,等同于 html 元素

:empty 選擇沒有子元素的元素

:target 選取當(dāng)前活動(dòng)的目標(biāo)元素

:not(selector) 選擇除 selector 元素意外的元素

:enabled 選擇可用的表單元素

:disabled 選擇禁用的表單元素

:checked 選擇被選中的表單元素

:after 在元素內(nèi)部最前添加內(nèi)容

:before 在元素內(nèi)部最后添加內(nèi)容

:nth-child(n) 匹配父元素下指定子元素,在所有子元素中排序第n

:nth-last-child(n) 匹配父元素下指定子元素,在所有子元素中排序第n,從后向前數(shù)

:nth-child(odd)

:nth-child(even)

:nth-child(3n+1)

:first-child

:last-child

:only-child

:nth-of-type(n) 匹配父元素下指定子元素,在同類子元素中排序第n

:nth-last-of-type(n) 匹配父元素下指定子元素,在同類子元素中排序第n,從后向前數(shù)

:nth-of-type(odd)

:nth-of-type(even)

:nth-of-type(3n+1)

:first-of-type

:last-of-type

:only-of-type

::selection 選擇被用戶選取的元素部分

:first-line 選擇元素中的第一行

:first-letter 選擇元素中的第一個(gè)字符

請(qǐng)列舉幾種隱藏元素的方法

visibility: hidden; 這個(gè)屬性只是簡(jiǎn)單的隱藏某個(gè)元素,但是元素占用的空間任然存在

opacity: 0; CSS3屬性,設(shè)置0可以使一個(gè)元素完全透明

position: absolute; 設(shè)置一個(gè)很大的 left 負(fù)值定位,使元素定位在可見區(qū)域之外

display: none; 元素會(huì)變得不可見,并且不會(huì)再占用文檔的空間。

transform: scale(0); 將一個(gè)元素設(shè)置為縮放無限小,元素將不可見,元素原來所在的位置將被保留

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/113362.html

相關(guān)文章

  • 前端最強(qiáng)面經(jīng)匯總

    摘要:獲取的對(duì)象范圍方法獲取的是最終應(yīng)用在元素上的所有屬性對(duì)象即使沒有代碼,也會(huì)把默認(rèn)的祖宗八代都顯示出來而只能獲取元素屬性中的樣式。因此對(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
  • 前端面試-CSS選擇器

    摘要:一選擇器作用選擇器用于定位我們想要給予樣式的元素,但不只是在中,對(duì)的選擇器也是支持的,比如。在選被元素后插入內(nèi)容其用法和特性與相似。所有偽元素選擇器在前端面試題偽類和偽元素?cái)U(kuò)展閱讀前端面試題清除浮動(dòng)前端面試題塊格式化上下文 一、CSS選擇器作用 CSS 選擇器用于定位我們想要給予樣式的 HTML 元素,但不只是在 CSS 中,JavaScript 對(duì) CSS 的選擇器也是支持的,比如 ...

    leanote 評(píng)論0 收藏0
  • 前端面試-CSS選擇器

    摘要:一選擇器作用選擇器用于定位我們想要給予樣式的元素,但不只是在中,對(duì)的選擇器也是支持的,比如。在選被元素后插入內(nèi)容其用法和特性與相似。所有偽元素選擇器在前端面試題偽類和偽元素?cái)U(kuò)展閱讀前端面試題清除浮動(dòng)前端面試題塊格式化上下文 一、CSS選擇器作用 CSS 選擇器用于定位我們想要給予樣式的 HTML 元素,但不只是在 CSS 中,JavaScript 對(duì) CSS 的選擇器也是支持的,比如 ...

    h9911 評(píng)論0 收藏0
  • 前端面試-CSS選擇器

    摘要:一選擇器作用選擇器用于定位我們想要給予樣式的元素,但不只是在中,對(duì)的選擇器也是支持的,比如。在選被元素后插入內(nèi)容其用法和特性與相似。所有偽元素選擇器在前端面試題偽類和偽元素?cái)U(kuò)展閱讀前端面試題清除浮動(dòng)前端面試題塊格式化上下文 一、CSS選擇器作用 CSS 選擇器用于定位我們想要給予樣式的 HTML 元素,但不只是在 CSS 中,JavaScript 對(duì) CSS 的選擇器也是支持的,比如 ...

    mingzhong 評(píng)論0 收藏0
  • 前端資源系列(4)-前端學(xué)習(xí)資源分享&前端面試資源匯總

    摘要:特意對(duì)前端學(xué)習(xí)資源做一個(gè)匯總,方便自己學(xué)習(xí)查閱參考,和好友們共同進(jìn)步。 特意對(duì)前端學(xué)習(xí)資源做一個(gè)匯總,方便自己學(xué)習(xí)查閱參考,和好友們共同進(jìn)步。 本以為自己收藏的站點(diǎn)多,可以很快搞定,沒想到一入?yún)R總深似海。還有很多不足&遺漏的地方,歡迎補(bǔ)充。有錯(cuò)誤的地方,還請(qǐng)斧正... 托管: welcome to git,歡迎交流,感謝star 有好友反應(yīng)和斧正,會(huì)及時(shí)更新,平時(shí)業(yè)務(wù)工作時(shí)也會(huì)不定期更...

    princekin 評(píng)論0 收藏0
  • 前端面試-CSS選擇器性能優(yōu)化

    摘要:不要在編寫規(guī)則時(shí)用標(biāo)簽名或類名不要在編寫規(guī)則時(shí)用標(biāo)簽名把多層標(biāo)簽選擇規(guī)則用規(guī)則替換,減少查找避免使用子選擇器后代選擇器在中是最昂貴的選擇器。如果你關(guān)心頁(yè)面性能的話,他們真不該被使用擴(kuò)展閱讀前端面試題選擇器前端面試題優(yōu)先級(jí) 一、CSS選擇符 CSS選擇符由一些初始化參數(shù)組成,這些參數(shù)指明了要應(yīng)用這個(gè)CSS規(guī)則的頁(yè)面元素。 作為一個(gè)網(wǎng)站的前端開發(fā)工程師,應(yīng)該避免編寫一些常見的開銷很大的CS...

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

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

0條評(píng)論

閱讀需要支付1元查看
<