css基础之flex布局

html-css010

css基础之flex布局,第1张

很多时候跟着书和不系统的视频学习,会发现没有方向,学了很多却不知道自己能够做出什么成绩。

学习要有一个清晰的职业学习规划,学习过程中会遇到很多问题,你可以到我们的web学习交流君羊- 点击此处 ,

同时准备了基础,进阶学习资料。学友都会在里面交流,分享一些学习的方法和需要注意的小细节,每天也会准时讲一些项目实战案例。

————————————————

1.什么是flex

flex 是 Flexible Box 的缩写,意为 弹性布局

flex布局中把一个元素作为容器,容器中的子元素称为项目

可以通过容器的flex属性,设置所有项目的排列样式。也可以通过项目的flex属性,设置指定项目的排列样式。

2.flex布局的方向

flex布局项目的排列方向可以有两个维度,一水平,二垂直

项目排列方向称为主轴,与主轴垂直的方向叫交叉轴

在每个轴上有两个方向,从左至右,从右到左;从上到下,从下到上。

2.1 flex水平布局

在水平维度,默认方向是从左至右

可以通过 flex-direction:row-reverse设置为从右到左排列

效果图:

1).默认方向,从左至右

2).反方向

2.2 垂直布局

效果图:

1).默认方向,从上到下

2).反方向

3. 容器内项目换行

通过flex-wrap属性,设置项目在容器内是否可以换行,默认不允许换行。

不换行的称为单行容器,换行的称为多行容器

也可以通过flex-flow属性同时设置容器主轴方向和是否换行(推荐使用)

效果图:

1).默认不允许换行,项目被压缩

2).允许换行,当剩余宽度不足容纳一个项目块时,就换行

相关知识:

css如何实现边框长度控制功能

详细介绍css中的数学表达式calc()

关于书籍:需要学习资料的小伙伴们可以加群, 点击此处

如Alert弹出窗口的旋转特效

css中

@namespace

s

"library://ns.adobe.com/flex/spark"

@namespace

mx

"library://ns.adobe.com/flex/mx"

mx|Alert

{

fontFamily:

VerdanaEmbedded

creationCompleteEffect:

myEffect

}

mxml中

<fx:Style

source="css/style.css"

/>

<fx:Declarations>

<mx:Sequence

id="myEffect">

<mx:Parallel>

<mx:Zoom

/>

<mx:Fade

/>

</mx:Parallel>

<mx:Rotate

/>

</mx:Sequence>

</fx:Declarations>

这样弹出窗口时就有了旋转特效

如果只是改样式的话有以下几种

直接改写默认控件样式

mx|button{

……

}

对指定控件增加样式,#后为控件ID

mx|Button#check{

……

}

或直接指定ID

#haloButton

{

base-color:#0000ff

}

通过状态定义样式

s|Button:down

{

color:#33CC33

}

增加控件样式,用styleName+"样式名"的方式应用于控件

.myButton{

……

}

增加子样式

mx|TabNavigator{

firstTabStyleName:

"MyFirstTab"

}

.MyTabs

{

……

}