整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          “圖片滑動樣式”修改HTML教程

          友們,下午好!

          都說一張美美的圖能為文章增色三分!

          那如果是一個交互的圖片樣式 + 幾張美美圖呢?這能為文章增色多少呢?

          比如這種(樣式ID:90298)

          使用這種樣式,即能有效的展示圖片,還能縮小文章空間,而且還與讀者存在互動交互,想不想知道這種樣式怎么做出來呢?

          上面兩種樣式都可以在樣式中心輸入ID搜索到。

          但是,樣式中心的原樣式,都是四張圖片滑動的,直接進行換圖就可以使用了。

          但如果要像三兒上面做的兩個樣式,一個是5張圖,一個是9張圖,就要進HTML進行修改了。

          教程一(帶圖片說明的樣式)

          進入到“HTML”模式,找到<section .........> </section>這段代碼,先選擇Ctrl+C復制。

          然后在此段代碼結尾處敲回車鍵換行,再選擇Ctrl+V粘貼。

          粘貼幾次,樣式就會在原有四張的基礎上多出幾張,胖友們可以根據自己的需求進行多次粘貼。

          教程二

          進入到“HTML”模式,找到<img src=........./>這段代碼,先選擇Ctrl+C復制,然后在此段代碼結尾處,再Ctrl+V粘貼。

          同上個樣式,粘貼幾次,樣式就會在原有四張的基礎上多出幾張,胖友們可以根據自己的需求進行多次粘貼。

          為了樣式的美感,還是有三點建議給大家。

          1、圖片請保持尺寸一致。否則會導致圖片層次不齊。

          2、尺寸請500x500以上。否則可能會使圖片不清楚。

          3、圖片大小盡可能小點。否則瀏覽時加載會不流暢。

          更多好玩樣式,請進樣式中心搜索“滾動

          好了,本次教程就到這里~bye

          景:

          想要實現圖片持續(xù)滾動,既然使用js,就千萬不要加css動畫、過渡等相關樣式,如果想要滾動的平滑一下,可以一像素一像素的感動,則很平滑,如果加了過渡動畫,當圖片重置為0時,會有往回倒的動畫效果,跟預期不符。

          原理:

          圖片滾動原理同圖片輪播原理,同樣也適用于文字滾動等一系列滾動,通過復制最后一張圖片或最后一堆文字插入第一行,或復制第一張圖片或一堆文字插入在結尾,來實現無縫拼接,前提:1、必須是沒有設置過渡動畫的,2、重置為0的時候與當前已經滾動到的高度對于圖片的位置而言肉眼看上去沒變化。

          實現:

          html主要包含三塊:

          1、最外層盒子,用來展示滾動圖的區(qū)域,overflow:hidden;

          2、滾動的盒子,主要改變該盒子的定位值,來實現滾動,里面包含所有要滾動的圖片或文字

          3、包含圖片或文字的盒子。

          代碼:

          class Roll {

          constructor(opts) {

          this.elem = opts.elem; // 圖片包含滾動長度的元素的

          this.elemBox = opts.elemBox; //圖片展示區(qū)域元素,為了獲取展示區(qū)域的高度

          this.direction = opts.direction;

          this.time = opts.time;

          this.init();

          this.roll = this.roll.bind(this)

          this.startRoll = this.startRoll.bind(this)

          this.stopRoll = this.stopRoll.bind(this)

          }

          init(){

          this.elemHeight = this.elem.offsetHeight;

          this.elemHtml = this.elem.innerHTML;

          this.elem.innerHTML = this.elem.innerHTML + this.elemHtml+ this.elemHtml;

          this.speed;

          // 如果向上滾或者向左滾動每次減1,向下滾或者向右滾動每次加1

          if(this.direction === 'top' || this.direction === 'left'){

          this.speed = -1;

          }else{

          this.speed = 1;

          }

          }

          roll(){

          switch (this.direction) {

          case "top":

          // 如果滾動的盒子的top值超出元素的高度,則置為0

          if(Math.abs(this.elemBox.offsetTop) >= this.elemHeight){

          this.elemBox.style.top = 0;

          }else{

          this.elemBox.style.top = this.elemBox.offsetTop + this.speed + 'px';

          }

          break;

          case "bottom":

          // 如果滾動的盒子的bottom值超出元素的高度,則置為0

          if(Math.abs(this.elemBox.offsetBottom) >= this.elemHeight){

          this.elemBox.style.bottom = 0;

          }else{

          this.elemBox.style.bottom = this.elemBox.offsetBottom + this.speed + 'px';

          }

          break;

          case "left":

          // 如果滾動的盒子的left超出元素的高度,則置為0

          if(Math.abs(this.elemBox.offsetLeft) >= this.elemHeight){

          this.elemBox.style.left = 0;

          }else{

          this.elemBox.style.left = this.elemBox.offsetLeft + this.speed + 'px';

          }

          break;

          case "right":

          // 如果滾動的盒子的right超出元素的高度,則置為0

          if(Math.abs(this.elemBox.offsetRight) >= this.elemHeight){

          this.elemBox.style.right = 0;

          }else{

          this.elemBox.style.right = this.elemBox.offsetRight + this.speed + 'px';

          }

          break;

          default:

          // 默認向上滾動,如果滾動的盒子的top超出元素的高度,則置為0

          if(Math.abs(this.elemBox.offsetTop) >= this.elemHeight){

          this.elemBox.style.top = 0;

          }else{

          this.elemBox.style.top = this.elemBox.offsetTop + speed + 'px';

          }

          }

          }

          stopRoll(){

          clearInterval(this.scrollTimer)

          }

          startRoll(){

          this.scrollTimer = setInterval(this.roll,this.time)

          }

          }



          原文鏈接:https://www.php.cn/js-tutorial-448891.html


          主站蜘蛛池模板: 无码人妻AⅤ一区二区三区| 亚洲视频在线一区二区| 日本丰满少妇一区二区三区| 中文字幕在线一区二区在线 | 精品欧洲av无码一区二区三区| 久久久不卡国产精品一区二区| 中文字幕无码免费久久9一区9| 国产精品一区二区久久精品无码| 成人免费一区二区无码视频| 国产激情一区二区三区 | 亚洲人AV永久一区二区三区久久| 丝袜人妻一区二区三区网站| 国产亚洲一区二区三区在线不卡| 久久精品国产第一区二区| 中文字幕久久亚洲一区| 亚洲福利视频一区| 国产精品福利一区二区久久| 国产一区精品视频| 中文字幕在线视频一区| 日韩爆乳一区二区无码| 亚洲国产欧美一区二区三区| 欧洲精品一区二区三区| 亚洲综合色自拍一区| 乱精品一区字幕二区| 国产高清视频一区二区| 国产福利电影一区二区三区久久老子无码午夜伦不 | 精品亚洲一区二区| 亚洲AV无码一区二区三区网址 | 久久精品综合一区二区三区| 国产精品综合AV一区二区国产馆| 一区二区在线视频免费观看| 91精品一区二区三区久久久久 | 国模一区二区三区| 无码国产精品一区二区免费3p| 国产一区二区视频免费| 99在线精品一区二区三区| 成人影片一区免费观看| 精品国产一区在线观看| 亚洲日韩精品一区二区三区无码 | 精品乱子伦一区二区三区| 国产精品无码一区二区三区毛片|