温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

CSS3中的Transition是怎样的

发布时间:2021-09-17 17:49:31 来源:亿速云 阅读:93 作者:柒染 栏目:web开发

CSS3中的Transition是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

1.会伸缩的搜索表单

常在 sf.gg 混的人都知道,它的顶部导航栏是这样的:
CSS3中的Transition是怎样的

当输入框获得焦点就会变成这样的:
CSS3中的Transition是怎样的

利用 CSS3 的 Transition 属性,我们可以简单做出一个类似的搜索表单出来:

HTML 标记:

XML/HTML 

  1. <header>  

  2.     <form action="#" method="post" class="searchForm">  

  3.         <label for="search">search</label>  

  4.         <input type="search" id="search" name="search" placeholder="search">  

  5.     </form>  

  6. </header>  

CSS 样式:

CSS 

  1. *{   

  2.     margin: 0;   

  3.     padding: 0;   

  4. }   

  5. header{   

  6.     font-familyhelvetica,arial,sans-serif;   

  7.     displayblock;   

  8.     overflowhidden;   

  9.     width:500px;           

  10.     margin15px;   

  11.     border-radius: 3px;   

  12.     background-color#ddd;   

  13. }   

  14. form.searchForm{   

  15.     /*包含label和input的容器*/  

  16.     width200px;   

  17.     margin5px;   

  18.     padding5px;   

  19. }   

  20. form.searchForm input{   

  21.     width90px;   

  22.     padding2px 0 3px 5px;   

  23.     outlinenone;   

  24.     font-size: 1.2em;   

  25.     border-color#eee #ccc #ccc #eee;   

  26.     border-radius: 10px;   

  27.     /*针对webkit内核的浏览器的厂商前缀*/  

  28.     -webkit-transition:0.5s width;   

  29. }   

  30. form.searchForm input:focus{   

  31.     width400px;   /*如果失去焦点,则缩回原来长度*/  

  32. }   

  33. form.searchForm label{   

  34.     displaynone;  /*标注是必要的,但不用显示出来*/  

  35. }  

效果图:

默认:
CSS3中的Transition是怎样的

获得焦点:
CSS3中的Transition是怎样的


    对于那些可以输入的控件,大家又俗称其为 字段。每个表单控件(submit 按钮除外),都有一个对应的 label 文本元素,用于描述控件代表的数据。所以,一个搜索框就是 一个字段的表单。

2.CSS3过渡

示例:

CSS 

  1. -webkit-transition:0.5s width;  

    注意:transition 属性需要使用带厂商前缀的形式&mdash;&mdash;这里示例只带有Webkit(Chrome / Safari)前缀的属性。

CSS3 过渡可以让 CSS 属性产生动画效果。平常被某些事件触发时变化很突然的样式,比如鼠标悬停时改变链接颜色,使用过渡后会在指定的时间段内逐渐变化。第一条 CSS 规则设定属性的初始状态和过渡参数。第二条 CSS 规则设定事件发生时属性的目标状态。

通常,过渡动画是由用户鼠标悬停时的 :hover 伪类规则和表单元素获得焦点时的 :focus 伪类规则触发的。除此之外,还可以在一个带类名选择符的规则中设定新状态,然后通过 JavaScript(或其他 JS 类库)为元素添加这个类名来触发过渡,添加类名的时机可以是鼠标点击或其它事件发生时。

有五个过渡属性:

    transition-property,过渡的 CSS 属性名,比如 color、 width;
    transition-duration,过渡的持续时间,以秒或毫秒设定,比如 2s、 500ms;
    transition-timing-function,过渡的调速函数,决定动画效果是否平滑,是先慢后快还
    是先快后慢,比如 ease-in、 ease-out、 ease-in-out 或 linear(默认值);
    transition-delay,过渡开始前的延迟时间,以秒或毫秒设定,比如 1s、 200ms;
    transition,过渡的简写属性,例如 transition:color 2s ease-in 1ms; 。

    注意::很多(并非全部)CSS 属性都可以通过 transition 属性来实现动画效果。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI