国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

前端每日實戰:93# 視頻演示如何用純 CSS 創作一根閃電連接線

elliott_hu / 2418人閱讀

摘要:效果預覽按下右側的點擊預覽按鈕可以在當前頁面預覽,點擊鏈接可以全屏預覽。可交互視頻此視頻是可以交互的,你可以隨時暫停視頻,編輯視頻中的代碼。繪制插頭上的陰影繪制線纜手持部分的陰影繪制線纜中稍粗部位的陰影最后,為畫面增加入場動畫大功告成

效果預覽

按下右側的“點擊預覽”按鈕可以在當前頁面預覽,點擊鏈接可以全屏預覽。

https://codepen.io/comehope/pen/RBjdzZ

可交互視頻

此視頻是可以交互的,你可以隨時暫停視頻,編輯視頻中的代碼。

請用 chrome, safari, edge 打開觀看。

https://scrimba.com/p/pEgDAM/cgkE6C6

源代碼下載

每日前端實戰系列的全部源代碼請從 github 下載:

https://github.com/comehope/front-end-daily-challenges

代碼解讀

定義 dom,容器中包含 2 個元素,分別代表插頭和線纜:

</>復制代碼

居中顯示:

</>復制代碼

  1. body {
  2. margin: 0;
  3. height: 100vh;
  4. display: flex;
  5. align-items: center;
  6. }

定義容器尺寸:

</>復制代碼

  1. .cable {
  2. display: flex;
  3. align-items: center;
  4. font-size: 10px;
  5. margin-left: 5em;
  6. }

畫出插頭的輪廓:

</>復制代碼

  1. .head {
  2. width: 8.5em;
  3. height: 8.5em;
  4. border-radius: 2em 0 0 2em;
  5. }

畫出插頭上針腳的輪廓:

</>復制代碼

  1. .head {
  2. position: relative;
  3. }
  4. .head::before {
  5. content: "";
  6. position: absolute;
  7. width: 3em;
  8. height: 7.3em;
  9. top: calc((8.5em - 7.3em) / 2);
  10. left: 0.7em;
  11. border-radius: 1em;
  12. box-sizing: border-box;
  13. }

畫出線纜中手持部位的輪廓:

</>復制代碼

  1. .body {
  2. width: 15.5em;
  3. height: 11em;
  4. border-radius: 0.5em;
  5. }

畫出線纜中稍粗部位的輪廓:

</>復制代碼

  1. .body {
  2. position: relative;
  3. display: flex;
  4. align-items: center;
  5. }
  6. .body::before {
  7. content: "";
  8. position: absolute;
  9. width: 13.5em;
  10. height: 6em;
  11. left: 15.5em;
  12. }

畫出線纜的延長線部分:

</>復制代碼

  1. .body::after {
  2. content: "";
  3. position: absolute;
  4. width: 100vh;
  5. height: 3.9em;
  6. left: calc(15.5em + 13.5em);
  7. }

隱藏畫面外的部分:

</>復制代碼

  1. body {
  2. overflow: hidden;
  3. }

接下來繪制細節。
為延長線涂上漸變色:

</>復制代碼

  1. .body::after {
  2. background:
  3. linear-gradient(
  4. white,
  5. hsl(0, 0%, 96%) 5%,
  6. hsl(0, 0%, 97%) 25%,
  7. hsl(0, 0%, 95%) 40%,
  8. hsl(0, 0%, 81%) 95%,
  9. white
  10. );
  11. }

為線纜中稍粗部位涂上漸變色:

</>復制代碼

  1. .body::before {
  2. background:
  3. linear-gradient(
  4. white,
  5. hsl(0, 0%, 96%) 5%,
  6. hsl(0, 0%, 98%) 20%,
  7. hsl(0, 0%, 95%) 50%,
  8. hsl(0, 0%, 81%) 95%,
  9. white
  10. );
  11. }

為線纜中手持部位涂上漸變色:

</>復制代碼

  1. .body {
  2. background:linear-gradient(
  3. hsl(0, 0%, 91%),
  4. white 15%,
  5. hsl(0, 0%, 93%) 50%,
  6. hsl(0, 0%, 87%) 70%,
  7. hsl(0, 0%, 79%) 90%,
  8. hsl(0, 0%, 84%),
  9. hsl(0, 0%, 86%)
  10. );
  11. }

為插頭涂上漸變色:

</>復制代碼

  1. .head {
  2. background:
  3. linear-gradient(
  4. -45deg,
  5. hsl(0, 0%, 75%),
  6. hsl(0, 0%, 79%),
  7. hsl(0, 0%, 78%),
  8. hsl(0, 0%, 87%) 80%
  9. );
  10. }

在插頭上畫出針腳:

</>復制代碼

  1. .head::before {
  2. background-color: white;
  3. }
  4. .head::after {
  5. content: "";
  6. position: absolute;
  7. box-sizing: border-box;
  8. width: 2.2em;
  9. height: 0.4em;
  10. color: goldenrod;
  11. background-color: currentColor;
  12. border-radius: 0.5em;
  13. left: 1.1em;
  14. top: 1.2em;
  15. box-shadow:
  16. 0 0.8em 0,
  17. 0 1.6em 0,
  18. 0 2.4em 0,
  19. 0 3.2em 0,
  20. 0 4em 0,
  21. 0 4.8em 0,
  22. 0 5.6em 0;
  23. }

接下來添加陰影,使線纜更立體。
繪制插頭上的陰影:

</>復制代碼

  1. .head {
  2. background:
  3. linear-gradient(
  4. 90deg,
  5. transparent 80%,
  6. rgba(0,0,0,12%)
  7. ),
  8. linear-gradient(
  9. -45deg,
  10. hsl(0, 0%, 75%),
  11. hsl(0, 0%, 79%),
  12. hsl(0, 0%, 78%),
  13. hsl(0, 0%, 87%) 80%
  14. );
  15. }

繪制線纜手持部分的陰影:

</>復制代碼

  1. .body::before {
  2. background:
  3. linear-gradient(
  4. 45deg,
  5. rgba(0,0,0,4%) 10%,
  6. transparent 20%
  7. ),
  8. linear-gradient(
  9. 90deg,
  10. rgba(0,0,0,4%),
  11. transparent 10%
  12. ),
  13. linear-gradient(
  14. white,
  15. hsl(0, 0%, 96%) 5%,
  16. hsl(0, 0%, 98%) 20%,
  17. hsl(0, 0%, 95%) 50%,
  18. hsl(0, 0%, 81%) 95%,
  19. white
  20. );
  21. }

繪制線纜中稍粗部位的陰影:

</>復制代碼

  1. .body::after {
  2. background:
  3. linear-gradient(
  4. 45deg,
  5. rgba(0,0,0,4%),
  6. transparent 4%
  7. ),
  8. linear-gradient(
  9. 90deg,
  10. rgba(0,0,0,4%),
  11. transparent 2%
  12. ),
  13. linear-gradient(
  14. white,
  15. hsl(0, 0%, 96%) 5%,
  16. hsl(0, 0%, 97%) 25%,
  17. hsl(0, 0%, 95%) 40%,
  18. hsl(0, 0%, 81%) 95%,
  19. white
  20. );
  21. }

最后,為畫面增加入場動畫

</>復制代碼

  1. .cable {
  2. animation: show 5s linear infinite;
  3. }
  4. @keyframes show {
  5. 0% {
  6. transform: translateX(100vw);
  7. }
  8. 20%, 100% {
  9. transform: translateX(0);
  10. }
  11. }

大功告成!

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/52741.html

相關文章

  • 前端每日實戰93# 視頻演示何用 CSS 創作一根閃電接線

    摘要:效果預覽按下右側的點擊預覽按鈕可以在當前頁面預覽,點擊鏈接可以全屏預覽。可交互視頻此視頻是可以交互的,你可以隨時暫停視頻,編輯視頻中的代碼。繪制插頭上的陰影繪制線纜手持部分的陰影繪制線纜中稍粗部位的陰影最后,為畫面增加入場動畫大功告成 showImg(https://segmentfault.com/img/bVbeuTB?w=400&h=300); 效果預覽 按下右側的點擊預覽按鈕可...

    Eric 評論0 收藏0
  • 前端每日實戰 2018 年 7 月份項目匯總(共 29 個項目)

    摘要:過往項目年月份項目匯總共個項目年月份項目匯總共個項目年月份項目匯總共個項目年月份發布的項目前端每日實戰專欄每天分解一個前端項目,用視頻記錄編碼過程,再配合詳細的代碼解讀,是學習前端開發的活的參考書視頻演示如何用純創作一臺咖啡機視頻演示如何用 過往項目 2018 年 6 月份項目匯總(共 27 個項目) 2018 年 5 月份項目匯總(共 30 個項目) 2018 年 4 月份項目匯總(...

    ghnor 評論0 收藏0
  • 前端每日實戰 2018 年 7 月份項目匯總(共 29 個項目)

    摘要:過往項目年月份項目匯總共個項目年月份項目匯總共個項目年月份項目匯總共個項目年月份發布的項目前端每日實戰專欄每天分解一個前端項目,用視頻記錄編碼過程,再配合詳細的代碼解讀,是學習前端開發的活的參考書視頻演示如何用純創作一臺咖啡機視頻演示如何用 過往項目 2018 年 6 月份項目匯總(共 27 個項目) 2018 年 5 月份項目匯總(共 30 個項目) 2018 年 4 月份項目匯總(...

    avwu 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<