首頁  >  文章  >  web前端  >  如何使用純CSS實現錫紙撕開的文字效果(附代碼)

如何使用純CSS實現錫紙撕開的文字效果(附代碼)

不言
不言原創
2018-08-28 09:41:132262瀏覽

這篇文章帶給大家的內容是關於如何使用純CSS實現錫紙撕開的文字效果(附程式碼) ,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

效果預覽

如何使用純CSS實現錫紙撕開的文字效果(附代碼)

原始碼下載

https://github.com/comehop​​e/front- end-daily-challenges

程式碼解讀

定義dom,容器包含若干子元素,每個子元素包含一個字母:

<div>
    <span>A</span>
    <span>W</span>
    <span>E</span>
    <span>S</span>
    <span>O</span>
    <span>M</span>
    <span>E</span>
</div>

定義容器尺寸:

body {
  margin: 0;
  height: 100vh;
}

.text {
  width: 100%;
  height: 100%;
}

設定子元素的佈局方式:

.text {
  display: flex;
  justify-content: space-between;
}

.text span {
    width: 100%;
}

定義文字樣式:

.text span {
    color: darkslategray;
    background-color: rgb(127, 140, 141);
    font-family: serif;
    font-size: 12vmin;
    text-shadow: 1px 1px 1px white;
    display: flex;
    align-items: center;
    justify-content: center;
}

設定文字的背景的漸變色,奇數位的文字和偶數位的文字的漸變方向是相反的:

.text span:nth-child(odd) {
    background: linear-gradient(
        to bottom,
        rgba(127, 140, 141, 0.2) 0%, 
        rgba(127, 140, 141, 0) 33%, 
        rgba(127, 140, 141, 0.7) 66%, 
        rgba(127, 140, 141, 0.2) 100%
    );
}

.text span:nth-child(even) {
    background: linear-gradient(
        to top,
        rgba(127, 140, 141, 0.2) 0%, 
        rgba(127, 140, 141, 0) 33%, 
        rgba(127, 140, 141, 0.7) 66%, 
        rgba(127, 140, 141, 0.2) 100%
    );
}

增加文字之間的分隔線,第1個文字之前不用加分隔線:

.text span {
    position: relative;
}

.text span:not(:first-child)::before {
    content: '';
    position: absolute;
    width: 10px;
    height: 90%;
    background-color: black;
    left: -5px;
    border-left: 1px solid white;
    border-radius: 50%;
}

讓分隔線上下錯位:

.text span:not(:first-child):nth-child(odd)::before {
    top: 2%;
}

.text span:not(:first-child):nth-child(even)::before {
    bottom: 2%;
}

大功告成!

相關推薦:

如何用純CSS實作接紮啤酒的特效(附原始碼)

如何使用純CSS實作一個沙漏的動畫效果

如何使用css實作監控網路連線狀態的頁面

以上是如何使用純CSS實現錫紙撕開的文字效果(附代碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn