明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

使用純CSS完成動(dòng)態(tài)的文字效果案例

[摘要]相信大家都曾在網(wǎng)站中看到過中效果,一打開頁面,無論是文字還是圖片,都隨著規(guī)定時(shí)間的而變化,今天我們將介紹如何通過用純CSS來實(shí)現(xiàn)這種效果,下面一起來看看。大家可能經(jīng)常會(huì)看到酷炫的網(wǎng)站在這類網(wǎng)站中能看到,一打開頁面,無論是文字還是圖片,都隨著規(guī)定時(shí)間的而變化。原理很簡單,主要用到CSS中animat...
相信大家都曾在網(wǎng)站中看到過中效果,一打開頁面,無論是文字還是圖片,都隨著規(guī)定時(shí)間的而變化,今天我們將介紹如何通過用純CSS來實(shí)現(xiàn)這種效果,下面一起來看看。

大家可能經(jīng)常會(huì)看到酷炫的網(wǎng)站

在這類網(wǎng)站中能看到,一打開頁面,無論是文字還是圖片,都隨著規(guī)定時(shí)間的而變化。原理很簡單,主要用到CSS中animation屬性。

接下來,我以我目前的工程項(xiàng)目為例,實(shí)現(xiàn)文字和圖片的動(dòng)畫效果。

HTML代碼編寫:

復(fù)制代碼

代碼如下:

<section class="rw-wrapper">
<span class="span-title">文字題目</span>
<h2 class="rw-sentence">
</h2>
</section>

目前大體的框架已經(jīng)寫好,包含一個(gè)section標(biāo)簽,span(根據(jù)喜好添加),h2標(biāo)簽。接下來向其中添加文字代碼。將代碼放在h2中。

復(fù)制代碼

代碼如下:

<p class="rw-words rw-words-1">
<span>內(nèi)容1</span>
<span>內(nèi)容2</span>
...
</p>

第一種文字動(dòng)畫HTML。

復(fù)制代碼

代碼如下:

<p class="rw-words rw-words-2">
<span>內(nèi)容1</span>
...
</p>

第二種文字動(dòng)畫HTML。

復(fù)制代碼

代碼如下:

//同理
<p class="rw-words rw-words-3">
<span><img src="圖片路徑" width="XX" height="XX"></span>
...
</p>

圖片變換效果,如上GIF的展示。圖片從右滑動(dòng)并更替。

ok,至此HTML代碼搞定,現(xiàn)在來實(shí)現(xiàn)最核心的部分:CSS設(shè)置動(dòng)畫及字體樣式。

CSS代碼編寫

復(fù)制代碼

代碼如下:

.rw-words{
-webkit-perspective:800px;
-moz-perspective:800px;
-o-perspective:800px;
-ms-perspactive:800px;
perspactive:800px;
}

這里順帶一講,perspective 屬性定義 3D 元素距視圖的距離,以像素計(jì)。當(dāng)為元素定義 perspective 屬性時(shí),其子元素會(huì)獲得透視效果,而不是元素本身。數(shù)字800px代表元素距離視圖的距離。-moz代表firefox瀏覽器私有屬性,-ms代表IE瀏覽器私有屬性,-webkit代表chrome、safari私有屬性,-o代表opera瀏覽器私有屬性.

復(fù)制代碼

代碼如下:

.rw-words span{
white-space:nowrap; //文字不允許換行
overflow:hidden;
}

對于具體的<span>標(biāo)簽位置設(shè)置根據(jù)實(shí)際情況設(shè)置。

復(fù)制代碼

代碼如下:

.rw-words-1 span{
-webkit-animation: rotateWordsFirst 10s linear infinite 0s;
-o-animation: rotateWordsFirst 10s linear infinite 0s;
-moz-animation: rotateWordsFirst 10s linear infinite 0s;
-ms-animation: rotateWordsFirst 10s linear infinite 0s;
animation:rotateWordsFirst 10s linear infinite 0s;
}

這里使用動(dòng)畫效果!首先rotateWordsFirst是動(dòng)畫的名稱,10s 是整個(gè)動(dòng)畫完成一次的時(shí)間,linear是使用的時(shí)間曲線,infinite重復(fù)次數(shù)無限。

關(guān)于animation語法:

復(fù)制代碼

代碼如下:

animation: name duration timing-function delay iteration-count direction;

animation-name:規(guī)定需要綁定到選擇器的 keyframe 名稱。

animation-duration:規(guī)定完成動(dòng)畫所花費(fèi)的時(shí)間,以秒或毫秒計(jì)。

animation-timing-function :規(guī)定動(dòng)畫的速度曲線。

animation-delay :規(guī)定在動(dòng)畫開始之前的延遲。

animation-iteration-count :規(guī)定動(dòng)畫應(yīng)該播放的次數(shù)( infinite無限輪播 )

animation-direction :規(guī)定是否應(yīng)該輪流反向播放動(dòng)畫。

想要更多了解的,搜索:CSS系列之a(chǎn)nimationi.

接下來,animation的另一種。

復(fù)制代碼

代碼如下:

.rw-words-2 span{
-webkit-animation: rotateWordsFirst 10s ease-in infinite 0s;
-o-animation: rotateWordsFirst 10s ease-in infinite 0s;
-moz-animation: rotateWordsFirst 10s ease-in infinite 0s;
-ms-animation: rotateWordsFirst 10s ease-in infinite 0s;
animation:rotateWordsFirst 10s ease-in infinite 0s;
}

ease-in解釋:

ease 規(guī)定慢速開始,然后變快,然后慢速結(jié)束的過渡效果; ease-in 規(guī)定以慢速開始的過渡效果; ease-out 規(guī)定以慢速結(jié)束的過渡效果; ease-in-out 規(guī)定以慢速開始和結(jié)束的過渡效果(這幾種效果大家都可以嘗試)

同理,對.rw-words-3 span可以用同樣的方式設(shè)置。

復(fù)制代碼

代碼如下:

.rw-words span:nth-child(1){
-webkit-animation-delay: 3s;
-moz-animation-delay: 3s;
-o-animation-delay: 3s;
-ms-animation-delay: 3s;
animation-delay: 3s;
}

:nth-child(n) 選擇器匹配屬于其父元素的第 N 個(gè)子元素,不論元素的類型。n 可以是數(shù)字、關(guān)鍵詞或公式。

復(fù)制代碼

代碼如下:

.rw-words span:nth-child(n) {
-webkit-animation-delay: 6s;
-moz-animation-delay: 6s;
-o-animation-delay: 6s;
-ms-animation-delay: 6s;
animation-delay: 6s;
}
...

設(shè)置不同的選擇器,來實(shí)現(xiàn)文字之間的顯示延遲。

復(fù)制代碼

代碼如下:

@-webkit-keyframes rotateWordsFirst/second {
0% { opacity: 0; -webkit-animation-timing-function: ease-in; width: 0px;}
//此屬性查看animation
5% { opacity: 1; -webkit-animation-timing-function: ease-out; width: 100%;}
17% { opacity: 1; } //設(shè)置不透明級別
20% { opacity: 0; }
100% { opacity: 0; }
}

keyframes對每一個(gè)動(dòng)畫定義時(shí)間軸,可以設(shè)置某個(gè)時(shí)間動(dòng)畫作用的元素是什么狀態(tài)。與animation配合使用。

然后寫出各個(gè)瀏覽器的適配,如-o,-moz,-ms等。

除了animation屬性,各位還可以試試transform屬性的使用,可以實(shí)現(xiàn)文字及其圖像的旋轉(zhuǎn),縮放等效果,以上就是利用純CSS實(shí)現(xiàn)動(dòng)態(tài)的文字效果的全部內(nèi)容,希望能對大家學(xué)習(xí)使用CSS有所幫助。

相關(guān)推薦:

CSS 文本字體顏色設(shè)置方法(CSS color)

以上就是利用純CSS實(shí)現(xiàn)動(dòng)態(tài)的文字效果實(shí)例的詳細(xì)內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!


網(wǎng)站建設(shè)是一個(gè)廣義的術(shù)語,涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護(hù)的網(wǎng)站。