Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 亚洲成人福利,国产精品系列在线观看,99爱精品视频

          整合營(yíng)銷服務(wù)商

          電腦端+手機(jī)端+微信端=數(shù)據(jù)同步管理

          免費(fèi)咨詢熱線:

          純CSS實(shí)現(xiàn)輪播圖效果,你不知道的CSS3黑科技


          輪播圖已經(jīng)是一個(gè)很常見的東西,尤其是在各大App的首頁(yè)頂部欄,經(jīng)常會(huì)輪番顯示不同的圖片。

          一提到輪播圖如何實(shí)現(xiàn)時(shí),很多人的第一反應(yīng)就是使用Javascript的定時(shí)器,當(dāng)然這種方法是可以實(shí)現(xiàn)的。不過(guò)就是有些繁瑣,今天這篇文章我們來(lái)看看如何不用Javascript,而使用純CSS代碼去實(shí)現(xiàn)輪播圖吧。

          這篇文章的所有代碼我都放在了github上,感興趣的同學(xué)可以去看看。

          https://github.com/zhouxiongking/article-pages/blob/master/articles/carousel/carousel.html

          CSS

          實(shí)現(xiàn)效果

          首先我們來(lái)看看只使用CSS實(shí)現(xiàn)的輪播圖效果。

          實(shí)現(xiàn)效果圖

          具體分析

          看到上述的實(shí)現(xiàn)效果后,我們來(lái)具體分析下頁(yè)面的構(gòu)成。

          • 頁(yè)面在布局上首先要有5張圖片,圖片固定寬度。

          • 每張圖片對(duì)應(yīng)一個(gè)標(biāo)題,標(biāo)題通過(guò)ul>li實(shí)現(xiàn),事先算好寬度,跟隨圖片一起滾動(dòng)。

          • 下邊有個(gè)1,2,3,4,5表示圖片順序的索引,鼠標(biāo)放上去后會(huì)顯示對(duì)應(yīng)的圖片。

          HTML頁(yè)面

          接下來(lái)我們通過(guò)代碼層面去看看整個(gè)效果是如何實(shí)現(xiàn)的。

          首先來(lái)看看HTML頁(yè)面的實(shí)現(xiàn),代碼中都有每個(gè)區(qū)域的描述。

          HTML頁(yè)面

          CSS部分

          實(shí)現(xiàn)這個(gè)效果主要是通過(guò)CSS代碼的,其代碼量比較大,我們分開來(lái)看。

          • 外層容器

          對(duì)于最外層容器我們?cè)O(shè)置絕對(duì)定位,方便圖片標(biāo)題子元素的定位。

          外層容器

          • 圖片標(biāo)題

          對(duì)于圖片的標(biāo)題我們也采用絕對(duì)定位,并且讓標(biāo)題橫向一行展示,方便在動(dòng)畫的時(shí)候直接橫向滾動(dòng)。

          得到的代碼如下所示。

          圖片標(biāo)題

          • 圖片與圖片容器

          接下來(lái)是設(shè)置圖片容器屬性以及圖片的基本大小。

          圖片容器也采用絕對(duì)定位,寬度可以動(dòng)態(tài)設(shè)置,根據(jù)圖片數(shù)量計(jì)算。每張圖片設(shè)置寬度與高度,得到的代碼如下。

          圖片與圖片容器

          • 圖片動(dòng)畫效果

          然后設(shè)置圖片的動(dòng)畫效果,對(duì)于任意的圖片都有進(jìn)入和靜止兩個(gè)狀態(tài),中間的效果可以任意定制。

          在這里,中間效果設(shè)置成5%的間隔,其他時(shí)間在進(jìn)行位置的切換,因?yàn)閳D片是處于水平分布,通過(guò)設(shè)置margin-left的值為負(fù)數(shù)進(jìn)行偏移即可。

          圖片動(dòng)畫效果

          • 數(shù)字索引的基本屬性

          對(duì)于下面的數(shù)字圖標(biāo)也是通過(guò)基本的CSS屬性進(jìn)行設(shè)置的,包括寬高,行高,透明度等等。

          在鼠標(biāo)移動(dòng)到對(duì)應(yīng)的數(shù)字上后,數(shù)字會(huì)顯示不同的顏色。而且在鼠標(biāo)停留在數(shù)字上后,動(dòng)畫效果會(huì)暫停。

          數(shù)字索引基本屬性

          • 數(shù)字索引的偏移量

          因?yàn)閿?shù)字是水平方向展示的,因此要設(shè)定每個(gè)數(shù)字的水平偏移量。

          數(shù)字水平偏移量

          • 鼠標(biāo)停在數(shù)字上的動(dòng)畫效果

          然后就是處理鼠標(biāo)停留在數(shù)字上的動(dòng)畫效果,因?yàn)槊繌垐D片對(duì)應(yīng)特定的數(shù)字,需要計(jì)算出每次的動(dòng)畫開始位置和結(jié)束位置。

          鼠標(biāo)停在數(shù)字上的動(dòng)畫效果

          • 動(dòng)畫效果賦予指定的數(shù)字

          最后一步就是將定義的動(dòng)畫效果賦予指定的數(shù)字上,每個(gè)數(shù)字都有特定的id。得到的代碼如下。

          動(dòng)畫效果賦予指定的數(shù)字

          至此所有步驟完成了,就可以得到文章開始的動(dòng)畫效果了。

          結(jié)束語(yǔ)

          這篇文章完全通過(guò)CSS實(shí)現(xiàn)了一個(gè)輪播圖的效果,相比于使用JS來(lái)說(shuō)減少頁(yè)面阻塞程度,效果更好。

          說(shuō)一下需要的知識(shí) setinterval函數(shù),明白document. getelementsById是什么意思。

          輪播呈現(xiàn)方式多種多樣,鄙人在這里給出一個(gè)比較low的方法,若有大神指教,不甚感激!

          思路:

          1、在body里面設(shè)置一個(gè)img標(biāo)簽,src路徑暫且不設(shè)置,并給img標(biāo)簽設(shè)置id。

          2、寫一個(gè)function函數(shù),里面設(shè)置src隨著某種變量而改變的條件。

          下面擼代碼!!!


          1. <!DOCTYPE html>
          2. <html>
          3. <head>
          4. <meta charset="utf-8" />
          5. <title></title>
          6. </head>
          7. <body>
          8. <img id = "image"/>
          9. <script >
          10. function $(id){
          11. return document.getElementById(id);
          12. }
          13. var index=1;
          14. function setSrc(){
          15. $("image").src="./img/"+index+".png";
          16. ++index;
          17. if(index==3){
          18. index=1;
          19. }
          20. }
          21. setSrc();
          22. setInterval("setSrc()",500);
          23. </script>
          24. </body>
          25. </html>

          在這里我采用了投機(jī)取巧的方式,我的圖片名都是:

          讀者可以按照需要改變一下函數(shù)的結(jié)構(gòu)

          <!DOCTYPE html>
          <html lang="en">
          <head>
          <meta charset="UTF-8" />
          <title>CSS 圖片輪播</title>
          <style type="text/css">
          *{
              margin: 0;
              padding: 0;
              list-style: none;
          }
          .swiper{
              width: 590px;
              height: 470px;
              margin: 0 auto;
              border: 5px solid red;
              /* 相對(duì)定位 */
              position: relative;
          }
          /* 5張輪播圖 */
          .swiper>ul,.swiper>ul>li{
              width: 590px;
              height: 470px;
          }
          .swiper>ul{
              position: relative;
          }
          .swiper>ul>li{
              position: absolute;
              left: 0;
              top: 0;
              display: none;
          }
          .swiper>ul>li.show{
              display: block;
          }
          /* 左右按鈕 */
          .swiper>a{
              color: #fff;
              width: 30px;
              height: 60px;
              font-size: 24px;
              text-decoration: none;
              text-align: center;
              line-height: 60px;
              background-color: rgba(0,0,0,0.5);
              position: absolute;
              top: 205px;
          }
          .swiper>.prev{
              left: 0;
          }
          .swiper>.next{
              right: 0;
          }
          /* 小圓點(diǎn) */
          .swiper>ol{
              width: 150px;
              height: 20px;
              position: absolute;
              left: 220px;/*此處可以寫成left:50%;margin-left:-75px;*/
              bottom: 10px;
          }
          .swiper>ol>li{
              width: 20px;
              height: 20px;
              float: left;
              margin: 0 5px;
              cursor: pointer;
              border-radius: 50%;
              background-color: rgba(255,255,255,0.8);
          }
          .swiper>ol>li.active{
              background-color: #f00;
          }
          </style>
          </head>
          <body>
          <!-- 輪播圖 -->
          <div class="swiper">
          <!-- 5張圖片 -->
          <ul>
          <li class="show"><a href=""><img src="img/jd1.jpg"/></a></li>
          <li><a href=""><img src="img/jd2.jpg"/></a></li>
          <li><a href=""><img src="img/jd3.jpg"/></a></li>
          <li><a href=""><img src="img/jd4.jpg"/></a></li>
          <li><a href=""><img src="img/jd5.jpg"/></a></li>
          </ul>
          <!-- 5個(gè)小圓點(diǎn) -->
          <ol>
          <li class="active"></li>
          <li></li>
          <li></li>
          <li></li>
          <li></li>
          </ol>
          <!-- 左右的按鈕 -->
          <a class="prev" href=""><</a>
          <a class="next" href="">></a>
          </div>
          </body>
          </html>
          

          主站蜘蛛池模板: 97精品国产福利一区二区三区| 麻豆AV天堂一区二区香蕉| 国产精品亚洲一区二区三区在线| 无码少妇一区二区三区芒果| 国产成人欧美一区二区三区| 精品视频一区二区三三区四区| 亚洲一区AV无码少妇电影☆| 一区 二区 三区 中文字幕| 国产精品综合AV一区二区国产馆| 亚洲AV日韩精品一区二区三区| 亚洲色无码专区一区| 精品人妻系列无码一区二区三区| 国模私拍一区二区三区| 中文字幕永久一区二区三区在线观看 | 亚洲国产精品一区二区成人片国内 | 在线观看国产一区亚洲bd| 日本一区二区视频| 91精品福利一区二区| 国产精品亚洲午夜一区二区三区 | 色噜噜狠狠一区二区三区| 精品亚洲A∨无码一区二区三区| 久久99热狠狠色精品一区| 无码一区二区三区老色鬼| 精品一区二区三区色花堂| 偷拍精品视频一区二区三区| 国产情侣一区二区三区| 本免费AV无码专区一区| 亚洲av不卡一区二区三区| 国产精品一区二区三区99| 国产人妖在线观看一区二区| 日韩国产一区二区| 精品国产一区二区三区久久蜜臀 | 日本一区二区三区在线观看视频| 美日韩一区二区三区| 日本精品一区二区久久久| 三上悠亚日韩精品一区在线| 亚洲一区综合在线播放| 久久青青草原一区二区| 杨幂AV污网站在线一区二区| 中文字幕在线无码一区二区三区| 精品无码一区二区三区爱欲|