uc手機瀏覽器使用animation的一個坑

最近做一個項目,應用在移動端,其中涉及一個評論組件。按照現有的趨勢,是有評論的地方必有點贊。當然我們的組件也未免于難。大概操作部分設計如下

如此簡low的設計,點個贊加個一這效果實在是簡直是撈比啊!!!_(:з」∠)_(我知道設計不會看到這篇文章)

怎么辦,一世英名不能毀于此啊(╯‵□′)╯︵┻━┻,如果加個動畫會不會挽回點顏面?

臥槽,這樣一個45度角仰望天空上揚的‘+1’的1s動畫總算是有點潮!

狗尾續貂開干吧!衣褲!

大體方案有兩種:方案一 js動態添加節點(+1),然后控制css變換。方案二 ?利用css3 animation實現動畫。

考慮移動端css3支持度較好,性能也比用js控制的要好,果斷選方案二!動畫的實現很好說,keyframe定義動畫就好了,這個‘+1’怎么引入呢,不想用到js。。。頁面直接埋點?增加頁面dom結構貌似也是不好的--、

誒~偽元素:after,:before ,定義在css里,也不會增加dom結構O(∩_∩)O~~

就這么干!~\(≧▽≦)/~

先初始化好位置

&:after{

content:(+1);

display:block;

position:absolute;

top:0;

right:5px;

font-style:normal;

color:rgba(255,115,0,0);

}

在定義好動畫

.keyframes(

~'up,

0%{color:rgba(255,115,0,0);transform:translate3d(0,5px,0);}

50%{color:rgba(255,115,0,1);transform:translate3d(5px,-7px,0);}

100%{color:rgba(255,115,0,0);transform:translate3d(10px,-15px,0)}'

);

再添加上動畫

&.rise:after{

.animation(up 1s linear);

}

(以上代碼用了less和lesshat)

哦了,只要點擊的時候給元素添加rise這個類就好啦。測試!

chrome ?okay!

qq ok!

自帶瀏覽器 ok!

uc ... uc ...uc ...尼瑪你倒是飛啊!(╯‵□′)╯︵┻━┻

算了,uc這個坑,前面吐槽多了,應該是見怪不怪了。。。排查問題吧。

首先想到是不支持translate3d,去掉換成操作top,right依然無效,況且很多別的頁面看到有用到的,難道是animation哪些屬性沒寫全?后來參照成功動畫的頁面把屬性補全依然不行。。。后來翻看多個頁面發現都能實現animation在uc上動畫的。我自己把頁面copy過來也可以的!真是奇了怪了,沒辦法誰讓在下葉良辰,我有一百個方法找出問題所在!在默默地給剛才的裝逼打滿分的時候想到,成功動畫的頁面沒有一個是操作偽元素的!!!是不是這個原因呢?后來將偽元素去掉,在所有點贊的按鈕下埋了+1這行代碼。然后做動畫,測試!居然ok了!!!干!!!

uc不支持偽元素使用animation動畫

不能太激動,先把解決方案應用到項目上(雖然頁面多了i的標簽,相比js控制動態添加還是好一點,為了效果的統一折中取方案)。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 選擇qi:是表達式 標簽選擇器 類選擇器 屬性選擇器 繼承屬性: color,font,text-align,li...
    love2013閱讀 2,337評論 0 11
  • 選擇qi:是表達式 標簽選擇器 類選擇器 屬性選擇器 繼承屬性: color,font,text-align,li...
    wzhiq896閱讀 1,805評論 0 2
  • 1、垂直對齊 如果你用CSS,則你會有困惑:我該怎么垂直對齊容器中的元素?現在,利用CSS3的Transform,...
    kiddings閱讀 3,200評論 0 11
  • 已經寫了10天的文案解析,對于大眾汽車覺得該講得也講的差不多了,把文案解析當成日志來寫作也是不錯的事情,真是有點兒...
    珊瑚大小姐閱讀 408評論 0 0
  • 7.7周四 投資記錄: 二加二等于四,輸贏無動于心 原則投資:入場和出場點總是一定的。 首則:1.每日操作不過3次...
    馮輝2016閱讀 364評論 0 0