CSS如何显示一个从左上角开始展开的弹窗,最终是显示在屏幕中间,思路是什么,请大神指导下。

html-css07

CSS如何显示一个从左上角开始展开的弹窗,最终是显示在屏幕中间,思路是什么,请大神指导下。,第1张

思路应该是一个从0%到100%的动画展开的效果,大概需要写0%,50%,100%三个样式。 弹窗的css代码大概是:position: fixedz-index: 2000left: 0top: 0这样弹窗的左上角原点在页面最左上角,如果要调整位置要用CSS变换特效(transform)的平移translate函数达到目的: translate(x, y)(长度值或者百分比):在水平方向、垂直方向平移元素。    translateX(value):水平方向平移。    translateY(value):垂直方向平移。    scale(x, y)、scaleX(value)、scaleY(value):在水平方向、垂直方向或者两个方向上缩放元素。    rotate()、rotateX()、rotateY()、rotateZ():rotate支持3D效果,可在x、y、z轴上旋转元素。    skew()、skewX()、skewY():在水平方向、垂直方向或者两个方向倾斜一定的角度。  另外弹窗展开的动画要用到css3的动画属性:    animation-delay:设置动画开始前的延迟时间。    animation-direction:设置动画循环播放的时候是否方向播放,包含normal和alternate两个值。    animation-duration:设置动画播放持续的时间。    animation-interacion-count:设置动画的播放次数,可以为具体数据或者无限循环关键字infinite。    animation-name:指定动画名称。    animation-play-state:允许动画暂停和重新播放,包含running、paused。    animation-timing-function:指定如何计算中间动画值,

如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

{

……

}