CSS3動畫屬性和flex彈性佈局各個屬性

【CSS3動畫的使用】
1.聲明一個關鍵幀(動畫):
@keynames name{
from{}
to{}

每一個階段的寫法:
①能夠直接使用from-to的寫法
②能夠設置0%-100%的寫法,但開頭和結尾必須是0%和100%
2.在CSS選擇器中使用animation屬性調用聲明好的動畫:
【animation的縮寫形式】
順序以下:
Animation-name:動畫名稱,就是咱們聲明的關鍵幀name。
Animation-duration:動畫持續時間。
Animation-timing-function:動畫速度曲線,經常使用ease。
Animation-delay:動畫開始的時間,延遲,infinite表示循環播放無限次。
Animation-iteration-count:動畫播放次數,默認爲1。
Animation-direction:動畫在下一個是否逆向播放,默認爲normal(表示不進行逆序播放),
alternate(動畫逆序播放)。
Animation-fill-mode:表示動畫結束後,停留在何種狀態,要想使用此屬性,動畫的執行次數必須是有限次。
屬性值包括:forwars表示停留在動畫結束狀態,backwarks:表示動畫停留在初始狀態(默認效果)。
Animation-name和 Animation-duration必需要選,其餘屬性選填。
Animation能夠設置多個動畫,多個動畫之間用逗號隔開
如:animation:frame1 1s,frame2 2s......佈局

 

 

 

給行級元素設置絕對定位可讓行級元素變爲塊級元素。字體

1.固定佈局(固定寬度高度)
2.流體佈局(百分比)
3.彈性佈局(Flex佈局):display:flex;
容器即爲父元素,項目即爲佈局中的子元素flex

Flex彈性佈局:
①瞭解兩個基本概念:
容器:須要添加彈性佈局的父元素。
項目:彈性佈局容器中的每個子元素成爲項目。

②彈性佈局的使用
1.給父容器添加display:flex/inline-flex屬性;便可使容器內容採用彈性佈局顯示,而不遵循常規文檔流的顯示方式。
2.容器添加彈性佈局後,僅僅是容器內採用彈性佈局,而容器自身在文檔流中的定位方式依然遵循常規文檔流。
3.display:flex;容器添加彈性佈局後,顯示爲塊級元素;
display:inline-flex;容器添加彈性佈局後,顯示爲行級元素。
注意:設爲flex佈局後,子元素的float,clear,vertical-align等屬性將會失效,但position屬性依然生效

③做用於容器的相關屬性:
1.flex-direction屬性決定主軸的方向(即項目的排列方向)。
row(默認值):主軸爲水平方向,起點在左端。動畫


row-reverse:主軸爲水平方向,起點在右端。spa


column:主軸爲垂直方向,起點在上沿。3d


column-reverse:主軸爲垂直方向,起點在下沿。orm


2.flex-wrap屬性定義,若是一條軸線排不下,如何換行。
nowrap(默認):不換行。當容器寬度不夠時,每一個項目會被擠壓寬度。blog


wrap:換行,而且第一行在容器最上方。繼承


wrap-reverse:換行且反轉,第一行在最下方文檔


3.flex-flow: row wrap;是 flex-direction和flex-wrap的縮寫形式,默認值爲 row wrap。
4.justify-content屬性定義了項目在主軸上的對齊方式。
注意:此屬性與主軸方向息息相關,好比主軸方向爲:row-起點在左邊;row-reverse-起點在右邊;
column-起點在上邊;column-reverse-起點在下邊
flex-start(默認值):項目位於主軸起點


flex-end:項目位於主軸終點


center: 居中


space-between:兩端對齊,項目之間的間隔都相等。(開頭和最後的項目與父容器的邊緣沒有間隔)


space-around:每一個項目兩側的間隔相等。因此,項目之間的間隔比項目與邊框的間隔大一倍。(開頭和最後的項目,與
父容器邊緣有必定間隔)


5.align-items屬性定義項目在交叉軸上如何對齊。
flex-start:交叉軸的起點對齊。


flex-end:交叉軸的終點對齊。


center:交叉軸的中點對齊。


baseline: 項目的第一行文字的基線對齊。(文字的行高以及字體的大小會影響每行的基線)


stretch(默認值):若是項目未設置高度或設爲auto,將佔滿整個容器的高度。


6.align-content屬性定義了多根軸線的對齊方式。若是項目只有一根軸線,該屬性不起做用。
(當項目換爲多行時,可以使用align-content取代align-items)。
flex-start:與交叉軸的起點對齊。


flex-end:與交叉軸的終點對齊。


center:與交叉軸的中點對齊。


space-between:與交叉軸兩端對齊,軸線之間的間隔平均分佈。


space-around:每根軸線兩側的間隔都相等。因此,軸線之間的間隔比軸線與邊框的間隔大一倍。

stretch(默認值):軸線佔滿整個交叉軸。 +. ④做用於項目上的屬性: order屬性:定義項目的排列順序。數值越小,排列越靠前,默認爲0。 flex-grow屬性定義項目的放大比例,默認爲0,即若是存在剩餘空間,也不放大。 flex-shrink屬性定義了項目的縮小比例,默認爲1,即若是空間不足,該項目將縮小。 flex-basis定義項目佔據的主軸空間。(若是主軸爲水平,則設置這個屬性,至關於項目的寬度,原width將會失效) flex屬性是flex-grow, flex-shrink 和 flex-basis的簡寫,默認值爲0 1 auto。後兩個屬性可選。 這個屬性有兩個快捷設置方法:auto=(1,1,auto)/none=(0,0,auto) align-self做用是: 定義單個項目自身在交叉軸上的排列方式,能夠覆蓋掉容器上的align-item屬性,屬性值與align-item相同, 默認值爲auto,表示繼承父容器的align-item屬性

相關文章
相關標籤/搜索