IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> svg文字渐变:颜色+描边+阴影(vue实现) -> 正文阅读

[JavaScript知识库]svg文字渐变:颜色+描边+阴影(vue实现)


实现代码借鉴于《CSS和SVG实现文字渐变、描边、投影》,本文为综合代码

1、实现效果

在这里插入图片描述

2、父组件

<template>
  <div style="background:rgb(240 240 240)">
      <SvgWord title="爱上现在,梦见未来!"></SvgWord>
  </div>
</template>

<script>
// 导入需要的组件
import SvgWord from '@/components/svgword.vue'

export default {
  // 注册组件
  components: { SvgWord },

}
</script>

3、子组件

<template>
    <div class="svgPra">
        <svg class="svgStyle">
            <defs>
                <!-- 文字颜色渐变 -->
                <linearGradient id="gradient" x1="0" y1="0" x2="1" y2="1">
                    <stop offset="0%" stop-color="#b5ffff" />
                    <stop offset="100%" stop-color="#fca5f1" />
                </linearGradient>
                <!-- 描边颜色渐变 -->
                <!-- 渐变方向(x1,y1)->(x2,y2) -->
                <linearGradient id="gradientStroke" x1="0" y1="0" x2="1" y2="1">
                    <stop offset="0%" stop-color="#00ffee" />
                    <stop offset="100%" stop-color="#d585ff" />
                </linearGradient>
                <!-- 阴影,想要投影渐变,可以写多个,起不同的名字,在css中应用 -->
                <filter id="shadow">
                    <feDropShadow dx="5" dy="5" stdDeviation="3" flood-color="#b9c4c4" />
                </filter>
            </defs>
            <text class="text" x="50%" y="50%">{{title}}</text>
        </svg>
    </div>
</template>
<script>
export default {
    props: ['title'],
}
</script>
<style lang="less" scoped>
.svgPra {
    // 边框投影
    width: 600px;
    height: 110px;
    margin: 30px;
    border-radius: 15px;
    box-shadow: -5px -5px 10px rgb(255, 255, 255);

    .svgStyle {
        // 边框投影
        width: 600px;
        height: 110px;
        background: white;
        box-shadow: 5px 5px 10px #aaa;
        border-radius: 15px;

        .text {
            // 颜色填充
            fill: url(#gradient);

            // 方向居中
            text-anchor: middle;
            dominant-baseline: middle;

            font-size: 60px;
            font-weight: 900;

            // 描边
            stroke-width: 4px;
            stroke: url(#gradientStroke);
            paint-order: stroke;

            // 投影
            // 建议用这个,代码简单整洁;渐变方法:text-shadow: 5px 5px 6px #b9c4c4,5px 5px 6px red;
            // text-shadow: 5px 5px 6px #b9c4c4;  // 简洁
            // svg方法实现投影;渐变方法:filter: url(#shadow1)  url(#shadow2);
            filter: url(#shadow);
        }
    }
}
</style>
  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-09-15 01:54:55  更:2022-09-15 01:55:38 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 9:45:08-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码