css之為文本添加線性漸變和外描邊


css之為文本添加線性漸變和外描邊

 一、效果:

描邊:描邊+漸變:

二、描邊:

api:text-stroke

問題:text-stroke的描邊是居中描邊,無法直接設置外描邊

解決:在before中添加文本,設置字體描邊,絕對定位在文本下方

代碼:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        body{background:blue}
        h2 {
            font-size: 31px;
            font-weight: 800;
            color: #70b4d9;
            position: relative;
            z-index: 1;
        }
        h2::before {
            content: attr(data-text);
            position: absolute;
            -webkit-text-stroke: 6px #fff;
            z-index: -1;
        }
    </style>
</head>
<body>
    <h2 data-text="數據采集">數據采集</h2>
</body>
</html>

三、添加漸變

api:

background-image:-webkit-gradient(linear,0% 0%, 0% 100%, from(#999999), to(#333333), color-stop(0.5,#336600));
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;

原理:字體漸變的原理是將背景圖片剪切為字體,然后將字體顏色取消。

問題:字體漸變的實質是背景圖片,所以無法在其下面再墊一層背景

解決:給文本套一層span,使漸變為span的背景,然后在父標簽墊描邊背景。

代碼:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        body{background:blue}
        h2 {
            font-size: 31px;
            font-weight: 800;
            color: #70b4d9;
            position: relative;
            z-index: 1;
        }
        h2>span{
            background-image:-webkit-gradient(linear,0% 0%, 0% 100%, from(#999999), to(#333333), color-stop(0.5,#336600));
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
        }
        h2::before {
            content: attr(data-text);
            position: absolute;
            -webkit-text-stroke: 6px #fff;
            z-index: -1;
        }
    </style>
</head>
<body>
    <h2 data-text="數據采集"><span>數據采集</span></h2>
</body>
</html>

  

鑽研不易,轉載請注明出處、、、、、、

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM