精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

使用mask-image實現星球大戰場景過渡效果

開發 前端
大家有看過星球大戰這部電影嗎,里面有許多場景間的過渡效果看起來非常的絲滑,那我們能不能使用CSS來模擬實現一下呢?

前言

大家有看過星球大戰這部電影嗎,里面有許多場景間的過渡效果看起來非常的絲滑,那我們能不能使用CSS來模擬實現一下呢?

漸變體驗

如果mask-image以圖像或漸變的形式出現,則我們可以控制與元素的哪些像素是可見的,哪些像素是不可見的(透明)。當mask-image應用于元素時,它充當一種映射,確定每個元素的可見性。

下面嘗試將兩張圖片使用mask-image實現交叉淡入淡出效果

<template>
  <div :class="$style.xq_outer">
    <div :class="$style.xq_bg"></div>
    <div :class="$style.xq_women"></div>
  </div>
</template>

<style lang="scss" module>
.xq_outer {
  position: relative;
  width: 600px;
  height: 360px;
  margin: 20px auto;
  background: red;
}
.xq_bg {
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: url("/public/xq_bg.jpeg");
  background-size: 100% 100%;
}
.xq_women {
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: url("/public/xq_women.jpeg");
  background-size: 100% 100%;
  -webkit-mask-image: linear-gradient(to right, transparent 30%, #fff 44%);
}
</style>

效果是這樣的:

圖片

這里第一眼看上去你不會以為這就是一張圖片吧,其實這是由星球背景 + 人物兩張圖片“合成”的。

是不是有點PS的感覺了。

「原理是:第一個場景是星球,第二個場景是人物,直接位于第一個場景之上。在第二個場景中使用漸變蒙版使其左側透明,從而顯示出第一個場景。」

-webkit-mask-image為linear-gradient()從左到右漸變。

  • 前三分之一是完全透明的,所以這部分人物圖片是不可見的,底下的星球圖片露出。
  • 中間的三分之一從透明變為不透明的白色,場景逐漸淡入。
  • 最后三分之一是完全不透明的白色,導致這部分人物圖片完全可見,底下的星球完全被蓋住。

水平擦除過渡

了解了上面這個效果的實現原理,我們就可以來著手實現第二個水平擦除效果了,從上面這個例子我們不難想象到只要蒙版拉伸到比實際場景更寬,然后動畫水平滑動,就能夠實現這個水平擦除效果了。

.xq_outer {
  position: relative;
  width: 600px;
  height: 360px;
  margin: 20px auto;
}
.xq_bg {
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: url("/public/xq_bg.jpeg");
  background-size: 100% 100%;
}
.xq_women {
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: url("/public/xq_women.jpeg");
  background-size: 100% 100%;
  // -webkit-mask-image: linear-gradient(to right, transparent 30%, #fff 44%);
  -webkit-mask-image: linear-gradient(to right, transparent 48%, #fff 52%);
  -webkit-mask-size: 210%;
  -webkit-mask-position: left;
}
.xq_outer:is(:hover) .xq_women {
  -webkit-mask-position: right;
  transition: -webkit-mask-position 2s linear;
}

效果如下:

圖片

「原理:蒙版的大小為-webkit-mask-size: 210%- 這為場景提供了 100% 的寬度,最初是完全透明的 + 10% 的淡入淡出 + 另一個 100% 的場景最終完全不透明。」

光圈擦除過渡

下面再來看一種光圈擦除效果,這里將會使用到@property自定義屬性,由于這個屬性還處于實驗階段,所以在將其用于生產之前,請仔細檢查瀏覽器兼容性表格。

大致的思路是:使用radial-gradient()在其中定義一個自定義屬性。然后我們可以對該自定義屬性進行動畫處理以對漸變進行動畫處理。但在此之前,我們需要將自定義屬性注冊到@property.

@property --r {
  syntax: "<percentage>";
  inherits: true;
  initial-value: -5%;
}

.xq_women {
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: url("/public/xq_women.jpeg");
  background-size: 100% 100%;
  // -webkit-mask-image: linear-gradient(to right, transparent 30%, #fff 44%);
  // -webkit-mask-image: linear-gradient(to right, transparent 48%, #fff 52%);
  // -webkit-mask-size: 210%;
  // -webkit-mask-position: left;
  -webkit-mask-image: radial-gradient(
    circle,
    #fff calc(var(--r) - 5%),
    transparent calc(var(--r) + 5%)
  );
}

@keyframes circle {
  to {
    --r: 105%;
  }
}
.xq_outer:is(:hover) .xq_women {
  // -webkit-mask-position: right;
  // transition: -webkit-mask-position 2s linear;
  animation: circle 2s linear forwards;
}

再來看看此時的效果:

圖片

「原理:隨著 --radius 的動畫化,radial-gradient() 中的色標位置也是如此。它們被計算為 --radius 值的 -5% 和 +5%,以創建漸變淡入淡出,為擦拭提供柔和的邊緣。」

時鐘擦除過渡

再來看一個星球大戰中最具標志性的擦除過渡——時鐘擦除過渡。這次我們使用conic-gradient()和動畫化一個自定義屬性angle值。

@property --angle {
  syntax: "<angle>";
  inherits: true;
  initial-value: -10deg;
}

.xq_women {
  position: absolute;
  width: 100%;
  height: 100%;
  background-image: url("/public/xq_women.jpeg");
  background-size: 100% 100%;
  -webkit-mask-image: conic-gradient(
      #fff 0deg,
      #fff calc(var(--angle) - 10deg),
      transparent calc(var(--angle) + 10deg),
      transparent 360deg
    ),
    conic-gradient(transparent 350deg, #fff 360deg);
  z-index: -1;
}

@keyframes ang {
  to {
    --angle: 370deg;
  }
}
.xq_outer:is(:hover) .xq_women {
  animation: ang 2s linear forwards;
  z-index: 1;
}

效果如下:

圖片

「原理:第一個conic-gradient()動畫以創建時鐘擦除效果,但它在其起點(在 處0deg)留下了硬邊。這就是為什么要conic-gradient()在硬邊緣之前創建一個小的淡入淡出并將其軟化的原因。漸變結合在一起為場景創建蒙版。」

總結

現在的CSS功能越來越強大了,在本文中介紹了很多 CSS 成分,包括不同類型的漸變、注冊自定義屬性,當然還有遮罩和動畫。這在以前,僅僅靠CSS是不可能實現的效果!

責任編輯:華軒 來源: 前端南玖
相關推薦

2016-09-28 00:32:46

2015-12-24 10:34:13

星球大戰機器人

2012-10-19 09:31:21

GoogleFacebook數據中心

2012-11-12 16:47:56

2017-05-10 11:23:28

人工智能

2023-10-09 12:36:25

AI模型

2012-11-08 17:33:53

智慧云

2016-01-12 11:54:45

原力覺醒向日葵星球大戰

2023-05-22 09:10:53

CSSloading 效

2023-10-09 13:11:31

2018-06-27 16:17:41

NIUDAY

2010-02-24 13:56:27

Python編程語言

2010-06-13 14:56:48

WindowsLinux蘋果

2010-09-06 11:02:35

喬布斯

2022-02-24 11:16:38

量子計算機器學習黑洞

2025-08-26 04:55:00

2009-09-09 09:37:38

谷歌蘋果

2022-09-16 14:26:56

惡意軟件網絡攻擊

2011-09-20 09:56:13

Google微軟電子郵件

2020-05-15 10:26:36

終端macOSHomeBrew
點贊
收藏

51CTO技術棧公眾號

亚洲午夜精品一区二区三区他趣| 麻豆专区一区二区三区四区五区| 亚洲国产精品中文| 97视频在线免费播放| 永久免费在线观看视频| 国产精品1024| 欧美一级大片在线观看| 中文字幕黄色网址| 国产精品网站在线看| 色94色欧美sute亚洲13| 不卡中文字幕在线| 日韩国产福利| 国产一区二区在线观看视频| 欧美亚洲视频在线观看| 伊人在线视频观看| 亚洲小说图片| 精品裸体舞一区二区三区| 久久婷婷国产91天堂综合精品| 中日韩高清电影网| 国产亚洲制服色| 99九九电视剧免费观看| 午夜精品久久久久久久蜜桃| 狠狠久久婷婷| 日韩中文字幕在线免费观看| 亚洲欧美日本一区| 欧美黄色一级| 欧美日本视频在线| 成年人免费大片| 国产伦久视频在线观看| 亚洲免费av观看| 日韩在线三级| 九色在线免费| 99精品视频在线播放观看| 91成人理论电影| 在线观看国产精品入口男同| 三级不卡在线观看| 456国产精品| 国产主播在线观看| 欧美日韩99| 久久视频在线直播| 欧美一区二区三区观看| 欧美三级美国一级| 亚洲精品视频网上网址在线观看| 久久久久国产免费| 欧美激情三级| 欧美成人一区二区三区片免费 | 欧美亚洲综合色| 日本精品久久久久中文字幕| 欧美电影免费观看网站| 狠狠色狠色综合曰曰| 青青青免费在线| 国产不卡人人| 一本高清dvd不卡在线观看| 日韩日韩日韩日韩日韩| 黄色污网站在线观看| 精品久久久久久国产91| 国产精品自拍片| 亚洲欧美小说色综合小说一区| 欧美日在线观看| 免费看国产曰批40分钟| av日韩亚洲| 欧美中文字幕亚洲一区二区va在线| 激情婷婷综合网| 亚洲欧美在线成人| 欧美日韩一区 二区 三区 久久精品| 91看片在线免费观看| 激情久久99| 91精品国产麻豆国产自产在线| 992tv人人草| 白嫩白嫩国产精品| 亚洲精品小视频| 少妇一级黄色片| 91精品婷婷色在线观看| 欧美精品videofree1080p| 免费日韩一级片| 日韩制服丝袜先锋影音| 国产在线拍揄自揄视频不卡99 | 亚洲福利影院| 欧美在线免费播放| 免费黄频在线观看| 大伊香蕉精品在线品播放| 日韩经典中文字幕在线观看| 国产精品高清无码在线观看| 国产精品毛片久久| 97久久精品人搡人人玩 | 91精品国产综合久久小美女| 九色91porny| 色橹橹欧美在线观看视频高清| 亚洲性夜色噜噜噜7777| 欧美黑人精品一区二区不卡| 国产亚洲激情| 国产在线拍偷自揄拍精品| 粉嫩小泬无遮挡久久久久久| 久久先锋影音av鲁色资源| 一区二区三区国| 毛片在线导航| 欧洲一区二区三区免费视频| 日韩大尺度视频| 精品国精品国产自在久国产应用| 欧美成人网在线| 日韩免费av网站| 粉嫩高潮美女一区二区三区| 欧美日韩综合网| 日本电影在线观看| 欧美三级午夜理伦三级中视频| 国产情侣久久久久aⅴ免费| 欧美日韩激情| 91国产高清在线| 国产欧美日韩成人| 久久影院午夜论| 欧美又粗又长又爽做受| 玖玖精品在线| 国产丝袜一区视频在线观看| 欧美黄色一区二区三区| 免费人成网站在线观看欧美高清| 国产一区免费| 国产不卡在线| 欧美午夜免费电影| 亚洲AV无码国产精品| 午夜精品国产| 成人免费网站在线观看| 国产福利小视频在线| 午夜伊人狠狠久久| 日本中文字幕精品| 亚洲a一区二区三区| 国产精品久久在线观看| 头脑特工队2免费完整版在线观看| 亚洲免费观看视频| 91看片破解版| 久久综合成人| 国产精品久久久久久久久久免费 | 欧美—级高清免费播放| 国产三级按摩推拿按摩| 欧美激情一区二区三区不卡| 国产欧美高清在线| 曰本一区二区三区视频| 91精品国产成人| 色一情一乱一区二区三区| 一区二区三区影院| 秋霞午夜鲁丝一区二区| 亚洲第一天堂| 亚洲曰本av电影| 在线三级中文| 日韩精品一区在线观看| 久久精品视频6| 成人午夜视频在线观看| 国产精品专区在线| 国语一区二区三区| 久久免费观看视频| 天堂av2024| 精品高清美女精品国产区| 欧洲一级黄色片| 噜噜噜久久亚洲精品国产品小说| 欧美精品二区三区四区免费看视频| 精精国产xxxx视频在线野外 | 韩国无码一区二区三区精品| 99精品国产在热久久下载| 精品日韩电影| 欧美影视资讯| 久久精品电影网站| 国产高清免费观看| 亚洲va欧美va人人爽| 亚洲av无码成人精品国产| 久久久精品五月天| 亚洲.欧美.日本.国产综合在线| 国模私拍国内精品国内av| 久久久精品久久| 成人久久精品人妻一区二区三区| 亚洲成人午夜影院| 一级黄色性视频| 日本午夜精品视频在线观看| 国产福利片一区二区| 玖玖玖电影综合影院| 1769国产精品| av大片在线播放| 欧美一区二区女人| 免费在线不卡视频| 日本一区二区视频在线观看| 91蝌蚪视频在线| 国产一区二区三区久久| 亚洲精品成人久久久998| 日韩欧美一级| 国产成人激情小视频| 黄色网址在线免费| 日韩精品久久久久久福利| 亚洲在线视频播放| 亚洲影院理伦片| 中文字幕在线观看免费高清| 国产成人综合网站| 成人中文字幕av| 国内激情久久| 亚洲精品在线视频观看| 成人18夜夜网深夜福利网| 国产精品成人一区| 欧美亚洲天堂| 中文字幕亚洲欧美在线| 天堂在线视频免费观看| 在线国产电影不卡| 国产亚洲精品久久久久久打不开| 国产视频在线观看一区二区三区| 一级片免费在线观看视频| 麻豆精品网站| 欧美大黑帍在线播放| 国产一区二区三区网| 国产经典一区二区三区| 国产精品4hu.www| 97视频免费看| 污视频在线免费观看网站| 国产午夜一区二区| 香蕉久久国产av一区二区| 欧美人狂配大交3d怪物一区| 欧美在线观看不卡| 一区二区三区四区国产精品| 免费黄色在线网址| 91丨九色丨国产丨porny| 久久久久无码国产精品一区李宗瑞| 蜜桃视频在线观看一区| 波多野结衣家庭教师在线| 国内一区二区三区| 中文字幕一区二区三区四区五区| 妖精视频一区二区三区免费观看| 国产精品视频免费观看| 只有精品亚洲| 国产一区二区在线免费| 自拍偷自拍亚洲精品被多人伦好爽| 久久久久久久久亚洲| 日本在线观看高清完整版| 久久天天躁日日躁| 男人影院在线观看| 中文字幕不卡在线视频极品| 美州a亚洲一视本频v色道| 日韩不卡在线观看| 黄色三级网站在线观看| 日韩精品一区二区三区三区免费| 999精品国产| 欧美精品在线观看一区二区| 在线免费观看中文字幕| 欧美性大战久久久| 中文字幕一区二区三区波野结 | 77777亚洲午夜久久多人| 日本大片在线播放| 久久久久久91| 91美女精品| 91成人在线播放| 手机在线观看av网站| 8x海外华人永久免费日韩内陆视频| 岛国毛片av在线| 午夜精品三级视频福利| 超碰99在线| 人人做人人澡人人爽欧美| 亚洲天堂一区二区| 国产精品久久久久久久久久| 欧美在线va视频| 国产欧美一区二区三区久久人妖 | 亚洲天堂av中文字幕| 欧美激情综合五月色丁香小说| 一女三黑人理论片在线| 久久久久国产精品人| 九九九视频在线观看| 中文字幕一区在线| 免费毛片在线播放免费 | 婷婷无套内射影院| 国产精品久久久久9999高清| 大肉大捧一进一出好爽动态图| 久久一区国产| 婷婷免费在线观看| 粉嫩aⅴ一区二区三区四区五区| 女性生殖扒开酷刑vk| 久久久久久一级片| 91香蕉国产视频| 亚洲一区二区四区蜜桃| 日韩 欧美 中文| 欧美日韩另类一区| 性生活视频软件| 亚洲欧美国产视频| 黄网站app在线观看| 欧美极品在线播放| 外国电影一区二区| 91九色视频在线观看| 亚洲免费专区| 成人性做爰片免费视频| 日韩视频三区| 久久人人爽av| 不卡电影一区二区三区| 99久久人妻无码精品系列| 亚洲人精品一区| 久久亚洲精品国产| 欧美精品自拍偷拍动漫精品| 蜜桃视频污在线观看| 亚洲色图在线观看| 日本aa在线| 国产精品视频99| 久9re热视频这里只有精品| 性欧美大战久久久久久久免费观看| 国内精品久久久久久久97牛牛| 茄子视频成人免费观看| 国产精品性做久久久久久| 亚洲AV无码国产精品| 亚洲免费av高清| 久草热在线观看| 亚洲精品在线观看网站| 3p视频在线观看| 性色av一区二区三区在线观看| www欧美在线观看| 欧美久久在线| 影音先锋亚洲一区| 一级黄色片国产| 国产欧美视频一区二区| 久久精品久久精品久久| 欧美一区二区三区在线电影| 黄色免费在线播放| 韩国欧美亚洲国产| 亚洲电影一区| 综合色婷婷一区二区亚洲欧美国产| 亚洲一区二区免费看| 911亚洲精选| 亚洲天堂中文字幕| 亚洲视频久久久| 亚洲欧美精品一区| www.youjizz.com在线| 999国内精品视频在线| 成人系列视频| 亚洲色精品三区二区一区| 91在线高清观看| 精品无码免费视频| 日韩女优av电影| 黄视频网站在线| 91精品在线一区| 久久激情电影| 亚洲黄色小视频在线观看| 国产日韩综合av| 无码一区二区三区在线观看| 日韩电影中文字幕在线观看| 不卡av免费观看| 国产精品一区二区av| 亚洲小说欧美另类社区| 在线中文字日产幕| 一区二区三区在线不卡| 亚洲成a人片77777精品| 欧美精品一区二区三区国产精品| 国产高清亚洲| 偷拍盗摄高潮叫床对白清晰| 九九视频精品免费| 性欧美疯狂猛交69hd| 欧美丰满一区二区免费视频| 快射视频在线观看| 91久久久久久久久久| 这里只有精品在线| 亚洲少妇一区二区| 亚洲一区二区三区四区中文字幕| 蜜桃在线一区二区| 7m精品福利视频导航| 九热爱视频精品视频| 丁香婷婷激情网| 国产精品麻豆一区二区 | 日韩av影视在线| 涩涩在线视频| 青青草国产精品| 奇米四色…亚洲| 国产人妻精品一区二区三区不卡| 欧美一区二区三区思思人| 影音先锋在线视频| 国内一区在线| 久久一综合视频| 欧美自拍偷拍网| 欧美电影精品一区二区| 国产精品25p| 亚洲欧洲免费无码| 国产福利精品一区二区| 久草国产精品视频| 最新国产成人av网站网址麻豆| 国产一区二区三区亚洲综合| 韩日视频在线观看| 国产亚洲精品久| 国产欧美一级片| 91成人精品网站| 天天综合久久| 国产麻豆xxxvideo实拍| 欧美中文字幕久久| 久草免费在线色站| 欧美日本韩国一区二区三区| 精品一区二区三区在线观看| 日本五十熟hd丰满| 这里精品视频免费| 57pao国产一区二区| 狠狠热免费视频| 一区二区国产视频| av在线电影网| 国产高清精品一区二区| 蜜乳av一区二区| 国产精品自拍视频一区| 中文字幕综合在线| 日韩成人一级| 国产大片一区二区三区| 高潮白浆女日韩av免费看| 欧美一区二区三区| 久久综合九色欧美狠狠| 国产老肥熟一区二区三区| 中文字幕精品视频在线观看| 欧美国产日韩一区二区在线观看 |