規(guī)范
- HTML規(guī)范指定,塊級元素不可以嵌套在行內(nèi)元素中,而CSS沒有這種限制,可以通過display來改變兩個元素的顯示角色瘾腰,這完全是合法的。
整理
css 和 hmtl 結(jié)合的方法
- link 標(biāo)簽
- @import指令(沒有l(wèi)ink好覆履,不要用)
- 在head里面加上style元素
- 內(nèi)聯(lián)樣式(HTML的style屬性)
偽類順序
link - visited - focus - hover -active
link visited稱為靜態(tài)偽類蹋盆,hover,focus,active為動態(tài)偽類费薄,可以應(yīng)用到任何元素
偽類和偽元素
所有偽元素必須放在出現(xiàn)該偽元素的選擇器的最后面
特殊性 繼承 層疊
- 特殊性 內(nèi)聯(lián)樣式1000、 id100栖雾、 類楞抡,屬性選擇器,偽類10 析藕、元素召廷,偽元素1、結(jié)合符(账胧,[分組]竞慢, 空格 [后代選擇器],+[相鄰兄弟選擇器]治泥,>[子代選擇器])筹煮,通配符特殊性為0
- 不是所有的樣式都可以繼承,繼承的樣式?jīng)]有特殊性
- 層疊規(guī)則 居夹!important 《 特殊性 《 順序(import 》 link 》 style)
web 安全顏色
指在256色計(jì)算機(jī)系統(tǒng)上總能避免抖動的顏色 0 3 6 9 C F
長度單位
三個相對長度單位 em ex px
- em 指 em-height 等于font-size的大小
- ex 指 x-height 時字體中小寫x的高度(大多數(shù)字體沒有內(nèi)置ex高度值)
字體
font-face指特定的字體風(fēng)格败潦,font-family是一個字體體系,通過字體系列准脂,font屬性(字體的簡寫屬性)
字體的樣式(系列【family】劫扒,加粗【weight】,變形【varient】)都是通過匹配字體完成的
文本屬性
- line-height 應(yīng)用于任何元素(理解什么是行內(nèi)框狸膏,什么是內(nèi)容框【em框】沟饥,行框,行間距环戈,基線闷板,縮放因子【1.5】)
- vertical-height top,bottom相對于行內(nèi)框院塞,text-top遮晚,text-bottom相對于em框
- word-spacing【字間距】, letter-spacing【字母間距】拦止,white-space【處理字之間和文本行的空白方式县遣,如nowrap,單行顯示】
基本視覺格式化
- 水平格式化
當(dāng)margin-left汹族,width萧求,margin-right都被設(shè)置為固定的值的時候,這些格式化屬性過分受限(overcontrained)顶瞒,會把margin-right強(qiáng)制為auto夸政,然后根據(jù)auto的規(guī)則來計(jì)算對應(yīng)的值 - 垂直格式化
- 在正常流中一個塊元素的margin-top或margin-bottom設(shè)置為auto,它會自動計(jì)算為0
- 垂直相鄰?fù)膺吘嗪喜⒘裥欤@種合并行為只應(yīng)用于外邊距守问,如果元素有內(nèi)邊距和邊框匀归,它們絕不會合并(在包含塊上設(shè)置邊框和內(nèi)邊距時,會使其子元素的外邊距包含在包含塊內(nèi))
- 行布局
- 概念(匿名文本耗帕,em框
字符框
穆端,內(nèi)容區(qū),行間距仿便,行內(nèi)框line-height
体啰,行框) - 行內(nèi)框的高度由內(nèi)聯(lián)元素的line-height決定,當(dāng)行中出現(xiàn)替換元素嗽仪,替換元素可以增加行內(nèi)框的高度荒勇,當(dāng)不改變line-height的值,替換元素的vertical-align會影響該行的行內(nèi)框高度
- 內(nèi)聯(lián)元素的垂直padding闻坚,margin改變不了內(nèi)容區(qū)的具體形狀枕屉,而是影響了行內(nèi)框的高度,而不影響行高鲤氢,替換元素的內(nèi)邊距,邊框西潘,外邊距會增加其行內(nèi)框
- 概念(匿名文本耗帕,em框
浮動
- 包裹性
- 脫離文檔流
- 浮動元素周圍的外邊距不會合并
- 生產(chǎn)一個塊級框
- 浮動元素會延伸卷玉,從而包含其所有后代浮動元素
- clear 用法
絕對定位元素
- 概念 靜態(tài)位置
- 元素的絕對定位為其后代元素建立了一個包含塊
- 放置和大小 由TRBL,margin喷市,width決定
- 當(dāng)絕對定位元素的大小在水平方向上過度受限相种,會忽略right值
- 當(dāng)絕對定位元素的大小在垂直方向上過度受限,會忽略bottom值
(文中提到品姓,只有top可取靜態(tài)位置寝并,bottom不可以。不懂)
相對定位
如果相對定位過度受限腹备,一個值會重置為另一個值的相反數(shù)衬潦。如top:10px,bottom:30px;bottom會被重置為-10px;
表
- 匿名的表對象會采取對象插入
- 邊框合并規(guī)則 border-style:hidden < border-width < border-style:double solid dashed dotted ridge outset groover inset < color :cell row row-group column column-group table < border-style:none;
- 表大小 fixed 可以更快計(jì)算出表的大小
生成內(nèi)容
- 如果:before或:after選擇器的主體是塊級元素缺前,則display屬性只接受值none漂彤,inline慨削,block,marker漂羊。其他值都處理為block
- 如果:befor或:after選擇器的主體是一個行內(nèi)元素,則display屬性只接受值none和inline卸留。所有其他都處理為inline
用戶界面樣式
- outline 輪廓不像邊框那樣參與到文檔流中走越,因此輪廓出現(xiàn)或消失時,不會影響文檔流耻瑟,即不會導(dǎo)致文檔的重新顯示
注意
- text-align應(yīng)用于塊級元素旨指,影響一個元素中的文本行相互之間的對齊方式赏酥,無法實(shí)現(xiàn)將行內(nèi)元素中的錨居中對齊,而不影響行內(nèi)的其他元素
- 一般的淤毛,一個元素的子元素繪繼承該元素的計(jì)算值今缚,像line-height可以繼承縮放因子
- 水平外邊距不會合并
- 元素的7項(xiàng)水平屬性的總格不能比其包含塊更寬。
- em長度單位與font-size有關(guān)系低淡,瀏覽器默認(rèn)的font-size為16px姓言,當(dāng)設(shè)定height為6em時,計(jì)算值為96px;
- 圖像也是行內(nèi)元素蔗蹋,但圖像也是替換元素
- magin padding 的百分?jǐn)?shù)都是相對于包含塊的width去計(jì)算的
- 邊框的顏色默認(rèn)是字體的顏色
- 設(shè)定背景圖像的同時最好設(shè)置一個背景顏色
- visibility:hidden (元素還是會影響文檔的布局何荚,就好像它還可見一樣)
display:none(元素不僅僅不顯示,還會從文檔中刪除)
quesition
- 支持hove屬性的用戶待敵在錨處于懸停狀態(tài)時必須重繪文檔猪杭,這就是要求重新顯示該鏈接之后的所有內(nèi)容餐塘。不過,CSS規(guī)范指出皂吮,文檔第一次顯示之后戒傻,用戶代理不必重繪文檔,所以你不能完全依賴預(yù)想的效果蜂筹。