<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ## 一、CSS3 過渡 ### 1、CSS3 過渡簡介 CSS3過渡是元素從一種樣式逐漸改變為另一種的效果。 **(1)實現過渡效果的兩個要件** - 規定把效果添加到哪個 CSS 屬性上 - 規定效果的時長 **(2)定義動畫的規則** 過渡transition的作用將元素的某個屬性從“一個值”在指定的時間內過渡到“另一個值” ### 2、transition 屬性 **(1)語法** ``` { transition: 屬性名 持續時間 過渡方法 延遲時間 } ``` - transition-property: 屬性的名字(如果是一個屬性就帶有這個屬性的名字;如果是多個屬性,屬性名之間用逗號隔開;如果是所有屬性,用all表示即可。)表示對哪個屬性進行變化。 - transition-duration: 變化持續的時間長度(秒或是毫秒)。 - transition-timing-function:過渡實現的方式(比如說,先慢后快/先快后慢),具體實現的時候是以函數來實現的。 - transition-delay:過渡開始前等待的時間,單位為秒或是毫秒。 **(2)transition-timing-function 屬性取值** - linear 勻速(線型過渡) - ease 先慢后快再慢 - ease-in 先慢后快 - ease-out 先快后慢 - ease-in-out 開頭慢結尾慢,中間快 ### 3、漸變特效 **(1)線性漸變 linear-gradient()** ![](http://nhfcloms-deveopler.oss-cn-beijing.aliyuncs.com/dwwb/portal/project/1635152632826/01.png) **示例:** ``` div { width: 200px; height: 100px; margin-top: 10px; border: 1px solid #ddd; } .grad1 { background: linear-gradient(45deg, #000, #f00 50%, #090); } .grad2 { background: linear-gradient(to top right, #000, #f00 50%, #090); } <div class="grad1"></div> <div class="grad2"></div> ``` ![](http://nhfcloms-deveopler.oss-cn-beijing.aliyuncs.com/dwwb/portal/project/1635152660054/02.png) **(2)徑向漸變 radial-gradient()** 徑向漸變不同于線性漸變,線性漸變是從“一個方向”向“另一個方向”的顏色漸變,而徑向漸變是從“一個點”向四周的顏色漸變。其語法如下: ``` background: radial-gradient(center, shape, size, start-color, ..., last-color); ``` - center:漸變起點的位置,可以為百分比,默認是圖形的正中心 - shape:漸變的形狀,ellipse表示橢圓形,circle表示圓形。默認為ellipse,如果元素形狀為正方形的元素,則ellipse和circle顯示一樣 - size:漸變的大小,即漸變到哪里停止,它有四個值。 closest-side:最近邊; farthest-side:最遠邊; closest-corner:最近角; farthest-corner:最遠角 **示例:** ``` div { background: radial-gradient(red, green, blue); } ``` 以中心(50% 50%)為起點,到最遠角(farthest-corner),從red到green、blue的均勻漸變,效果如下圖: ![](http://nhfcloms-deveopler.oss-cn-beijing.aliyuncs.com/dwwb/portal/project/1635152679121/03.png) 完整的代碼可以寫成: ``` div { background: -webkit-radial-gradient(50% 50%, farthest-corner, red, green, blue); } 或 div { background: -webkit-radial-gradient(center, farthest-corner, red, green, blue); } ``` ### 4、實例 ##### 實例1:原有的狀態是灰底紅字,鼠標懸停在上面利用transition屬性設置了一個3s 之內的變化,背景為由紅到藍的漸變色,文字顏色也逐漸變成白色 - 首先定義div標簽的原始狀態 - 再設置當鼠標懸停在上面的狀態 ``` div { height: 100px; width: 300px; text-align: center; line-height: 30px; border-radius: 5px; align-content: center; color: #f00; font-size: 30px; background-color: #999; transition:all 1s linear; } div:hover { color: #fff; background: linear-gradient(to bottom,#f00,#00f); } <div> transition </div> ``` ##### 實例2:鼠標滑過圖片放大 ``` .container { width: 200px; height: 200px; margin: 0 auto; border: 1px solid #ccc; overflow: hidden; } .container img { transition: all 1.2s ease; } .container img:hover{ transform: scale(1.2); } <div class="container"> <img src="http://img1.imgtn.bdimg.com/it/u=2214428394,3333726185&fm=26&gp=0.jpg" alt="" /> </div> ``` ## 二、CSS3 動畫 ### 1、CSS3 中的動畫實現的是什么效果 動畫是使元素從一種樣式逐漸變化為另一種樣式的效果。可以改變任意多的樣式任意多的次數。動畫效果是通過animation屬性來完成的。 用百分比來規定變化發生的時間,或用關鍵詞 "from" 和 "to",等同于 0% 和 100%。0% 是動畫的開始,100% 是動畫的完成。為了得到最佳的瀏覽器支持,應該始終定義 0% 和 100% 選擇器。 **(1)實現動畫效果兩要件** - 首先要定義一個動畫 ,定義一個@keyframes 規則(關鍵幀) - 調用動畫 動畫定義好之后,使用animation 屬性調用動畫 **(2)了解動畫的形成原理** 是根據人的“視覺暫留”現象,將一組靜止的圖形連續出現后,便形成了動畫。Flash動畫就是基于此原理來制成動畫的,時間軸上的每一幀在編輯區中有不同的圖形,當時間軸上的幀以當前幀頻向前移動時,我們看到的是編輯區中的一組圖形不斷變化,從而產生了運動的視覺效果 ### 2、animation 屬性設置動畫效果 **(1)animation 屬性取值** - @keyframes 規定動畫 - animation 所有動畫屬性的簡寫屬性,除了animation-play-state屬性 - animation-name 規定@keyframes 動畫名稱 - animation-duration 規定一個動畫完成的周期所花費的秒或毫秒。默認值為0, - animation-timing-function 規定動畫的速度曲線。默認值為ease - animation-delay 動畫開始前等待的時間。取值可為負(-2s 動畫跳過 2 秒進入動畫周期),屬性不兼容 IE 9以及更早版本的瀏覽器. - animation-iteration-count 規定動畫播放的次數。默認值為1 - animation-direction 規定動畫是否在下一周期逆向地播放。默認值是normal - animation-play-state 規定動畫是否正在運行或暫停。默認值是running - animation-fill-mode 規定對象動畫時間之外的狀態 **(2)animation-timing-function 屬性取值** - linear 勻速(線型過渡) - ease 先慢后快再慢 - ease-in 先慢后快 - ease-out 先快后慢 - ease-in-out 開頭慢結尾慢,中間快 ### 3、實例 ##### 實例1:用動畫animation屬性實現在位置變化的同時顏色也發生相應的變化 **顏色** : 由紅色—黃色—藍色—綠色—紅色 **位置**:距左0px距頂0px—距左200px距頂0px—距左200px距頂200px—距左0px距頂200px—距左0px距頂0px(回到原地) **(1)animation屬性**:@keyframes(關鍵幀) 動畫名稱為mycolor;一個動畫周期為5s;動畫運動先慢后快再慢ease;動畫開始前等待2s;無限(infinite)循環播放;動畫正在運行(runing) ``` div { width: 200px; height: 200px; background: #f00; position: relative; animation-name: mycolor; /*animation-name規定@keyframes 動畫名稱*/ animation-duration: 5s; /*animation-duration規定一個動畫完成的周期所花費的秒或毫秒*/ animation-timing-function: ease; /*animation-timing-function規定動畫的速度曲線*/ animation-delay: 2s; /*animation-delay規定動畫何時開始。默認值為0*/ animation-iteration-count: infinite; /*animation-iteration-count規定動畫播放的次數*/ animation-direction: alternate; /*animation-driection規定動畫是否在下一周期逆向地播放*/ animation-play-state: running; /*animation-play-state規定動畫是否正在運行或暫停*/ } @keyframes mycolor { 0% {background:red;left:0px; top:0px; } 25% {background:yellow; left:200px; top:0px;} 50% {background:blue;left:200px; top:200px} 75% {background:green;left:0px; top:200px;} 100% {background:red;left:0px; top:0px;} } <div></div> ``` **(2)animation 的簡寫屬性**: ``` div { width:200px; height:200px; background:red; position:relative; animation:mycolor 5s linear 2s infinite alternate; } ``` ##### 實例2: Loading(加載)動畫效果 ``` .loader { position: fixed; top: 5px; left: 5px; width: 20px; height: 20px; border: 3px solid #eee; border-radius: 50%; border-top: 3px solid #3498db; animation: spin 1s linear infinite; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } <div class="loader"></div> ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看