Css相關(guān)筆記

1.sort排序 從小到大
從大到小排序
例子:
let num = [21,4,5,65,10,4];
num.sort(function(a,b){
return b-a;
})
console.log(num); //[ 65, 21, 10, 5, 4, 4 ]
像素排序
let nums = ['200px','10px','300px','60px'];
nums.sort(function(a,b){
return parseInt(a)-parseInt(b);
})
console.log(nums); //['10px','60px','200px','300px']

2.隨機(jī)數(shù)的公式
//x-y之間的隨機(jī)數(shù)
Math.round( Math.random() * (y-x) + x )

//0-x之間的隨機(jī)數(shù)
Math.round( Math.random() * x );

//1-x之間的隨機(jī)數(shù)
Math.ceil( Math.random() * x );

3.BOM 和 Event
window.navigator.userAgent //瀏覽器信息 可以用來(lái)判斷是不是IE瀏覽器
window.location: 瀏覽器地址信息
window.location.href: url
window.location.search: url問(wèn)號(hào)澜驮?后面的內(nèi)容
window.location.hash: url井號(hào)#后面的內(nèi)容

4.bootstrap
bootstrap是最受歡迎且簡(jiǎn)潔、直觀惋鸥、強(qiáng)悍的前端開發(fā)杂穷,包含html、css和js基礎(chǔ)框架卦绣,
用于開發(fā)響應(yīng)式布局耐量,移動(dòng)設(shè)備優(yōu)先的web項(xiàng)目,讓web開發(fā)更迅速迎卤、簡(jiǎn)單拴鸵。

css3的屬性選擇器
div[id |= "shu"]{
color: red;
}

5.響應(yīng)式介紹
媒詢(@media)
在對(duì)于的媒體設(shè)備和媒體特征下,解析對(duì)應(yīng)的媒詢樣式

媒體設(shè)備
all所有
screen彩屏

媒體特征(從小屏幕寫到大屏幕)
max-width
min-width
媒體關(guān)鍵詞
not
and
only
@media all and (min-width:960px){color:pink} //1.所有設(shè)備2.最小寬度960px

6.CSS3筆記
Css3選擇器-結(jié)構(gòu)性偽類
E:nth-child(n) 表示E父元素中的第n個(gè)字節(jié)點(diǎn)
p:nth-child(odd){background:red} //匹配奇數(shù)行
p:nth-child(even){background:yellow} //匹配偶數(shù)行
p:nth-child(2n){bakcground} //類型偶數(shù)
注意:p:nth-child(2)找p標(biāo)簽父級(jí)下的第二個(gè)子元素,并且這個(gè)元素還是p標(biāo)簽
E:nth-last-child(n)表示E父元素中的第n個(gè)字節(jié)點(diǎn)劲藐,從后向前計(jì)算
E:nth-of-type(n)表示E父元素中的第n個(gè)字節(jié)點(diǎn)八堡,且類型為E
E:nth-last-of-type(n)表示E父元素中的第n個(gè)字節(jié)點(diǎn),且類型為E聘芜,從后向前結(jié)算
E:empty 表示E元素中沒(méi)有子節(jié)點(diǎn)兄渺。注意:子節(jié)點(diǎn)包含文本節(jié)點(diǎn)

E:first-child 表示E元素中的第一個(gè)子節(jié)點(diǎn)
E:last-child 表示E元素中的最后一個(gè)子節(jié)點(diǎn)
E:first-of-type 表示E父元素中的第一個(gè)子節(jié)點(diǎn)且節(jié)點(diǎn)類型是E的
E:last-of-type 表示E父元素中的最后一個(gè)子節(jié)點(diǎn)且節(jié)點(diǎn)類型是E的
E:only-child表示E元素中只有一個(gè)字節(jié)點(diǎn)。注意:子節(jié)點(diǎn)不包含文本節(jié)點(diǎn)汰现。
E:only-of-type表示E的父元素只有一個(gè)子節(jié)點(diǎn)挂谍,且這個(gè)唯一的子節(jié)點(diǎn)的類型必須是E。注意:子節(jié)點(diǎn)不包含文本系欸但瞎饲。

Css3選擇器-偽類
E:target表示當(dāng)前的URL片段的元素類型口叙,這個(gè)類型必須是E
E:disabled表示不可點(diǎn)擊的表單控件
E:enabled表示可點(diǎn)擊的表單控件
E:checked表示已選中的checkbox或radio
E:first-line表示E元素中的第一行
E:first-letter表示E元素中的第一個(gè)字符(用了該元素該字符選中不了)
E::selection表示E元素在用戶選中文字時(shí)
E::before生成內(nèi)容在E元素前
E::after生產(chǎn)內(nèi)容在E元素后
E:not(s)表示E元素不被匹配
E~F表示E元素毗鄰的F元素
Content屬性

CSS3新增顏色模式
rgba
r red 紅 0-255
g green 綠 0-255
b blue 藍(lán) 0-255
a aplha 透明 0-1

實(shí)例:背景透明,文字不透明
問(wèn)題:注意邊框顏色透明有問(wèn)題

文字陰影
text-shadow:x y blur color, ...
參數(shù)
x 橫向偏移
y 縱向偏移
blur 模糊距離
color 陰影顏色
注意:文本陰影如果加很多層嗅战,會(huì)很卡很卡很卡

文字陰影的應(yīng)用
最簡(jiǎn)單的用法
text-shadow: 2px 2px 4px black;
陰影疊加
text-shadow: 2px 2px 0px red, 2px 2px 4px green;
先渲染后面的妄田,在渲染前面的
層疊
color: red;font-size: 100px;font-weight:bold;text-shadow: 2px 2px 0 white,4p 4px 0 red;
光暈
color:white;font-size:100px;text-shadow:0 0 10px #fff,0 0 20px #ffff,
0 0 30px #fff, 0 0 40px #ff00de,0 0 70px # ff00de, 0 0 80px #ff00de,
0 0 100px #ff00de, 0 0 150px #ff00de;

文字描邊
-webkit-text-stroke:寬度 顏色

新增文本功能
Direction 定義文本排列方式(全兼容)
Rtl 從右向左排列
Ltr 從左向右排列
注意要配合unicode-bidi 一塊使用 unicode-bidi:bidi-override;

Text-overflow 定義省略文本的處理方式
clip 無(wú)省略號(hào)
ellipsis省略號(hào)
注意配合overflow:hidden和white-space:nowrap一塊使用

7.彈性盒模型
注意在使用彈性盒模型的時(shí)候,父元素必須要加display:box或display:inline-box
Box-orient定義盒模型的布局方向
Horizontal 水平顯示 默認(rèn)
vertical 垂直方向
Box-direction元素排列順序
Normal 正常
Reverse反序
Box-ordinal-group設(shè)置元素的具體位置1,2,3...
Box-flex定義盒子的彈性空間 -webkit-box-flex:1
子元素的尺寸=盒子的尺寸*子元素的box-flex屬性值/所有子元素的box-flex屬性值的和
Box-pack 對(duì)盒子富裕的空間進(jìn)行管理
Star 所有子元素在盒子左側(cè)顯示驮捍,富耘蹦牛空間在右側(cè)
end所有子元素在盒子的右側(cè)顯示,富远遥空間在左側(cè)
center所有子元素居中
justify富余空間在子元素之間平均分布
Box-align 在垂直方向上對(duì)元素的位置進(jìn)行管理
Star所有子元素在頂部
end所有子元素在底部
center所有子元素居中

8.盒模型的陰影 可以多層疊加
box-shadow:[inset] x y blur [spread] color
參數(shù)
inset:投影方式
inset: 內(nèi)投影
不給: 外投影
x启具、y:陰影偏移
blur:模糊半徑
spread:擴(kuò)展陰影半徑
線擴(kuò)展原有的形狀,再開始畫陰影
color

  1. 其它盒模型新增屬性
    box-reflect倒影
    direction方向 above|below|left|right;
    距離 10px
    漸變(可選)-webkit-linear-gradient(red,yellow)
    resize自由縮放
    Both 水平垂直都可以縮放
    Horizontal只有水平方向可以縮放
    Vertical只有垂直方向可以縮放
    注意:一定要配合overflow:auto 一塊使用只有水平方向可以縮放
    Box-sizing 盒模型解析模式
    Content-box 標(biāo)準(zhǔn)盒模型
    width/height = border + padding +content
    Border-box 怪異盒模型 width/height = content

Css3分欄布局
column-width 欄目寬度
column-count欄目列數(shù)
column-gap欄目距離
column-rule欄目間隔線

圓角
border-radius:1-4個(gè)數(shù)字/1-4個(gè)數(shù)字
前面是水平珊泳,后面是垂直
不給"/"則水平和垂直一樣
border-radius:10px/5px;
參數(shù)
各種長(zhǎng)度單位都可以:px,%,...
%有時(shí)候很方便鲁冯,但寬高不一致時(shí)不太好

邊框
邊框圖片border-image
border-image-sourceg 引入圖片
border-image-slice 切割圖片
border-image-width 邊框?qū)挾?br> border-image-repeat 圖片的排列方式
-round平鋪,repeat重復(fù)旨椒,stretch拉伸
邊框顏色border-colors

線性漸變
線性漸變格式
linear-gradient([<起點(diǎn)> || <角度>,] ? <點(diǎn)>,<點(diǎn)>...)
linear-gradient(60deg,red 0, blue 50%,pink 100%);
只能用在背景上
IE
filter:progid:DXImageTransform.Microsoft.gradient(start Colorstr="#ffffff",endColorstr="#ff0000",GradientType='1')
參數(shù)
-起點(diǎn):從什么方向開始漸變 默認(rèn):top

left晓褪、top、left top
-角度:從什么角度開始漸變
xxx deg的形式
-點(diǎn):漸變點(diǎn)的顏色和位置
black 50%,位置可選

線性漸變實(shí)例
最簡(jiǎn)單
red,green從上到下
起點(diǎn)位置
left top,red,green
30deg,red,green
平鋪:repeating-linear-gradient

10.DOM優(yōu)化
減少Dom操作
盡量用節(jié)點(diǎn)克隆
-cloneNode
訪問(wèn)元素集合
-盡量用局部變量
元素節(jié)點(diǎn)
-盡量用只獲取元素的節(jié)點(diǎn)方法
選擇器API
-利用querySelector综慎、querySelectorAll
1.用變量聲明document
var doc = document;
2.用變量聲明list.length
var len = list.length;

Dom與瀏覽器
重排: 改變頁(yè)面的內(nèi)容
重繪: 瀏覽器顯示內(nèi)容
添加順序
-盡量在appendChild前添加操作
合并dom操作
-利用cssText
例子: 
    ele.style.width = '100px';
    ele.style.height = '100px';
    性能比較好:ele.style.cssText = 'width:100px;height:100px'
緩存布局信息
例子:
    var oDiv = document.getElementById("div");
    var L = oDiv.offsetLeft; //把變量提上來(lái)緩存信息性能會(huì)比較好點(diǎn)
    var T =oDiv.offsetTop;

    setInterval(function(){
        L++;
        T++
        oDiv.style.left = L +'px';
        oDiv.style.top = T + 'px';
    })
文檔碎片
-createDocumentFragment();
例子:
    var oul = document.getElmentById('ull');
    
    for(var i =0;i < 5000; i++){ //5000次重排和重繪
        var oli = document.createElment("li");
        oul.appendChild(oli);
    }

文檔碎片優(yōu)化
    var oul = document.getElmentById('ull');
    var ofrag = document.createDocumentFragment();
    
    for(var i =0;i < 5000; i++){ //5000次重排和重繪
        var oli = document.createElment("li");
        ofrag.appendChild(oli);
    }
    
    oul.appendChild(ofrag);
    console.timeEnd('miao');

Dom與事件
事件委托
Dom與前端模板
能更好的對(duì)邏輯和視圖分離,MVC架構(gòu)的基礎(chǔ)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末勤庐,一起剝皮案震驚了整個(gè)濱河市示惊,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌愉镰,老刑警劉巖米罚,帶你破解...
    沈念sama閱讀 218,204評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異丈探,居然都是意外死亡录择,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)隘竭,“玉大人塘秦,你說(shuō)我怎么就攤上這事《矗” “怎么了尊剔?”我有些...
    開封第一講書人閱讀 164,548評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)菱皆。 經(jīng)常有香客問(wèn)我须误,道長(zhǎng),這世上最難降的妖魔是什么仇轻? 我笑而不...
    開封第一講書人閱讀 58,657評(píng)論 1 293
  • 正文 為了忘掉前任京痢,我火速辦了婚禮,結(jié)果婚禮上篷店,老公的妹妹穿的比我還像新娘历造。我一直安慰自己,他們只是感情好船庇,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,689評(píng)論 6 392
  • 文/花漫 我一把揭開白布吭产。 她就那樣靜靜地躺著,像睡著了一般鸭轮。 火紅的嫁衣襯著肌膚如雪臣淤。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,554評(píng)論 1 305
  • 那天窃爷,我揣著相機(jī)與錄音邑蒋,去河邊找鬼。 笑死按厘,一個(gè)胖子當(dāng)著我的面吹牛医吊,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播逮京,決...
    沈念sama閱讀 40,302評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼卿堂,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了懒棉?” 一聲冷哼從身側(cè)響起草描,我...
    開封第一講書人閱讀 39,216評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎策严,沒(méi)想到半個(gè)月后穗慕,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,661評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡妻导,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,851評(píng)論 3 336
  • 正文 我和宋清朗相戀三年逛绵,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了怀各。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,977評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡术浪,死狀恐怖瓢对,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情添吗,我是刑警寧澤沥曹,帶...
    沈念sama閱讀 35,697評(píng)論 5 347
  • 正文 年R本政府宣布,位于F島的核電站碟联,受9級(jí)特大地震影響妓美,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜鲤孵,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,306評(píng)論 3 330
  • 文/蒙蒙 一壶栋、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧普监,春花似錦贵试、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至廊散,卻和暖如春桑滩,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背允睹。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工运准, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人缭受。 一個(gè)月前我還...
    沈念sama閱讀 48,138評(píng)論 3 370
  • 正文 我出身青樓胁澳,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親米者。 傳聞我的和親對(duì)象是個(gè)殘疾皇子韭畸,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,927評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 1.1CSS 基礎(chǔ)與選擇器初識(shí) | CSS 1. CSS 加載方式有幾種? CSS樣式加載一共有四種方式: 1塘雳、行...
    沒(méi)糖_cristalle閱讀 723評(píng)論 0 0
  • 一陆盘、CSS入門 1、css選擇器 選擇器的作用是“用于確定(選定)要進(jìn)行樣式設(shè)定的標(biāo)簽(元素)”败明。 有若干種形式的...
    寵辱不驚丶?xì)q月靜好閱讀 1,595評(píng)論 0 6
  • 初始CSS3 什么是CSS3? CSS3是CSS2的升級(jí)版本太防,3只是版本號(hào)妻顶,它在CSS2.1的基礎(chǔ)上增加了很多強(qiáng)大...
    llt00閱讀 431評(píng)論 0 0
  • 1.Label的作用是什么?是怎么用的 答案: label標(biāo)簽來(lái)定義表單控制間的關(guān)系當(dāng)用戶選擇該標(biāo)簽時(shí)酸员,瀏覽器會(huì)自...
    耶啵_閱讀 730評(píng)論 0 0
  • CSS簡(jiǎn)介 CSS(Cascading Style Sheets)是一種用來(lái)表現(xiàn)HTML(標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言的一個(gè)應(yīng)...
    多喝熱水z閱讀 509評(píng)論 0 4