通过CSS实现 文字渐变色 的两种方式

2023-11-08

主要实现文字渐变色有两种方式
background 属性
mask 属性

1 background 属性
效果图如下
![在这里插入图片描述](https://img-blog.csdnimg.cn/19d18ccd8c23401ebe2c0b440ae95060.png

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <style>
    span {
        background: linear-gradient(to right, red, green);
        -webkit-background-clip: text;
        color: transparent;
    }
    </style>
</head>
<body>
        <span>这是个文字渐变色</span>
</body>
</html>

background: linear-gradient(to right, red, green); 这行是给背景设置为渐变色,这里注意一点,这样是简写了,其实是给background-image 设置为渐变色,不是 background-color ,是背景图 取值为渐变色,如果不知道渐变色,直接到这里看,渐变色
-webkit-background-clip: text; 这行就要说到,background-clip 属性了 ,我们来看看 W3Cschool 上的说明
在这里插入图片描述
上面没有说取值 text 的情况,看到前面的前缀,大家应该也能想到,它的兼容性问题了,目前还不是能所有浏览器都支持。

取值为text的意思,就是以区块内的文字作为裁剪区域向外裁剪,文字的背景即为区块的背景,文字之外的区域都将被裁剪掉。

所以,我们最后写color: transparent; 让文字为透明色,就是让后面背景色显示出来。

2 mask 属性
效果图如下
![在这里插入图片描述](https://img-blog.csdnimg.cn/01dfe490937348aab66597b625015218.png

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />

<style type="text/css">
    h1{
        position: relative;
        color: yellow;
    }
    h1:before{
        content: attr(text);
        position: absolute;
        z-index: 10;
        color:pink;
        -webkit-mask:linear-gradient(to left, red, transparent );
    }
</style>
</style>
</head>

<body>
    <h1 text="前端简单说">前端简单说</h1>
</body>

</html>

:before 选择器向选定的元素 前 插入内容。
使用content 属性来指定要插入的内容

content取值 attr 就是用来获取属性值的,content:attr(属性名);

content: attr(text); 能获取到元素的 text 属性,这里的这个text属性是自己自定义的一个属性,你也可以在元素中加一个 tt 属性,像这样

前端简单说

然后content属性 这样写,content: attr(tt); 同样是可以起作用的。

好的我们继续说第二种方式的重点,mask属性,因为之前已经写过一篇介绍mask属性的文章了,
这里就不很详细的介绍了,想详细了解的朋友可以看看上面这篇文章,一定会对你有所帮助的。

mask属性简单说,就是能让元素的某一部分显示或隐藏。
我们看张图就能明白,第二种方式实现的原理了
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过CSS实现 文字渐变色 的两种方式 的相关文章

  • 适用于所有浏览器的 Center HTML 5 音频播放器

    我尝试过这样的代码 div style margin 0 auto div
  • 如何仅使用

    我有下面使用表标签的代码 但我想要使用 div 标签的同一张表 我已经尝试过但无法做到相同 下面我也附上了图像 请帮助我使用 div 标签创建相同的表
  • asp.net aspx 的标记验证

    我使用 asp net 创建了一个网站 在互联网上启动网站之前 我想对我使用的网络表单进行验证测试 我已经知道如何通过 W3C 标记验证服务来验证 HTML 静态网站 是否可以通过上传文件在 Webforms aspx 上执行相同的验证方法
  • LESS:使用 Bootstrap 时出现无法识别的输入错误

    升级 Harp 后 我开始得到无法识别的输入不相关的 CSS 行中出现错误 Less gt CSS 无法识别的输入 Users jorge Dropbox harp io apps mysite com public css main le
  • 使用自定义数据属性是否会产生浏览器兼容性问题?

    我必须在自定义数据标签或 id 之间进行选择 我想选择自定义数据标签 但我想确保它们不会导致当今最广泛使用的浏览器的浏览器兼容性问题 我正在使用 jQuery 1 6 我的特定场景涉及到我需要为多个操作引用 commentId 的情况 di
  • WeasyPrint HTML 到图像的转换:如何使图像大小适应内容?

    我需要将一些 HTML 转换为 Python 中的图像 我正在使用威易印刷 https weasyprint org 我希望图像大小能够适应内容 使用以下命令时 我得到的图像比内容大得多 A4 pip install weasyprint
  • 使用 jQuery 禁用 CSS 继承

    有没有办法使用 jQuery 或通用 javascript 在块级别禁用 CSS 继承 例如 如果我通过 javascript 拉入外部资源 例如 Pastie org 它们将拥有自己的 CSS 而我的 CSS 会覆盖它们 我想将嵌入代码放
  • PHPExcel - 如何使用 preg_replace 替换文本

    我正在使用 PHPExcel 将数据库中的数据提取到组织好的 Excel 工作表中 除了一件事之外 一切都运转良好 我的数据库条目有时可能包含 HTML 标记 例如 strong strong br p p 等等 所以我设法让这个 PHP
  • 克隆表行

    我怎样才能使用javascript 我假设 来克隆一个表格行 就像下图所示的那样 您可以将现场活动连接到所有按钮 例如 如果您给他们一类克隆 则以下内容将起作用 input clone live click function put jqu
  • Javascript 字符串/整数比较

    我在 HTML 中存储一些客户端参数 然后需要将它们作为整数进行比较 不幸的是我遇到了一个我无法解释的严重错误 该错误似乎是我的 JS 将参数读取为字符串而不是整数 导致我的整数比较失败 我生成了一个错误的小例子 我也无法解释 运行时以下返
  • jQuery Mobile 和文本区域行

    所以 我想展示一个textarea仅 1 行 但 jQuery Mobile 并不这么认为 无论我在rows属性 它始终是 2 行高度 请问有什么解决办法吗 jQuery Mobile CSS 设置了特定的高度textarea要素 text
  • 使用 CSS 在浏览器中滚动时更改标题的大小和内容

    知道如何制作这里看到的东西吗http studiompls com case studies crown maple http studiompls com case studies crown maple 标题变小 徽标更改为不同的按钮
  • PHP、MySQL 验证故障且搜索不起作用?

    我创建了一个小的注册粘性表格 一切工作正常 但如果我输入任何错误的值 例如姓名中的数字 年龄中的字母甚至错误的电子邮件格式 那么数据仍然保存在数据库中 我无法找出验证问题 另外一个是搜索选项 每当我在搜索框中输入任何名字或姓氏时 它都应该显
  • 持续运行的 C# 代码 - 服务还是单独的线程?

    我有一个 NET 4 Web 应用程序 它有 3 个关联的独立项目 DAL BAL 和 UI 我正在使用实体框架进行数据库交互 我有代码循环遍历一堆数据库数据 根据找到的内容调用方法 然后更新数据库 我希望这段代码一直运行 同时 我希望用户
  • css bootstrap 下拉菜单在 IE 中看起来不同

    我正在使用CSS引导程序3 2 0 http getbootstrap com css 然而 当在 IE 中查看该网站时 菜单选项周围有一个黑色边框 而且下拉菜单按钮看起来也有所不同 如果您查看该网站http getbootstrap co
  • 如何转义 onClick 处理程序内 JavaScript 代码中的字符串?

    也许我只是想得太难了 但我在弄清楚链接的 onClick 处理程序内的某些 JavaScript 代码中的字符串上使用什么转义时遇到了问题 例子 a href Select a The and 是发生模板替换的地方 我的问题是项目名称可以包
  • 如何使用 GWT 创建可点击的链接?

    我想与 GWT 建立一些可点击的链接 我不确定这是否是最佳实践 基本上我想要类似这样的东西 如果我用 html 编写的话 a href index html alt Link a Use a 超级链接 http google web too
  • 多个引导模式的滚动问题

    我有一个带有大量信息的模态页面 因此您需要滚动 该模式包含指向第二个模式的链接 When I 打开模态 1 单击链接打开模式 2 模式 1 保持在后台 然后关闭模式 2 以便我回到模式 1 modal 1 失去滚动 仍然有一个滚动条 但它不
  • 为什么变量 1 += 变量 2 比变量 1 = 变量 1 + 变量 2 快得多?

    我继承了一些 Python 代码 用于创建巨大的表 最多 19 列宽 5000 行 花了九秒用于在屏幕上绘制表格 我注意到每一行都是使用以下代码添加的 sTable sTable n GetRow where sTable是一个字符串 我将
  • Android:Html 锚链接仅在 Web 视图中有效一次

    在使用锚链接加载 html 内容时 我在 webview 中遇到一些奇怪的问题 以下代码非常适合锚标记 但是只有一次 第二次当我按下锚标签时不工作 protected void onCreate Bundle savedInstanceSt

随机推荐

  • 获取B站SESSDATA及解决403

    获取B站SESSDATA 登录B站 按F12打开控制台 找到SESSDATA复制即可 解决B站防盗链 403 B站开启了防盗链 利用的是HTTP的Referer属性做判断 如果Referer是他白名单之外的网站 就会返回403 全站图片使用
  • 4-4面向对象编程(上)----再谈方法(3)--方法参数的值传递机制

    重点 3 方法参数的值传递机制 一 方法 必须由其所在类或对象调用才有意义 若方法含以后参数 1 形参 方法声明时的参数 2 实参 方法调用时实际传给形参的参数值 二 Java的实参值如何传入方法中的 Java里方法的参数传递方式只有一种
  • Android app专项测试之耗电量测试

    前言 耗电量指标 待机时间成关注目标 提升用户体验 通过不同的测试场景 找出app高耗电的场景并解决 01 需要的环境准备 1 python2 7 必须是2 7 3 X版本是不支持的 2 golang语言的开发环境 3 Android SD
  • OpenCV-Python 图像缩放

    缩放就是调整图片的大小 使用cv2 resize 函数实现缩放 图像的大小可以手动指定 也可以指定缩放比例 也可使用不同的插值方法 插值方式 cv INTER NEAREST 最近邻插值 cv INTER LINEAR 双线性插值 cv I
  • Qt学习之Qt基础入门(上)

    1 前言 上一篇博客 简单的介绍了一下C 的面向对象编程 这篇博客就主要是用来入门Qt 废话不多说 开干 Qt入门系列 Qt学习之C 基础 Qt学习之Qt安装 Qt学习之Qt基础入门 上 Qt学习之Qt基础入门 中 Qt学习之Qt基础入门
  • 第一个Echarts

    安装node js教程 解决cnpm v 不能运行的问题 使用pycharm进行代码编写 步骤 1 在pycharm中新建一个文件夹 在文件夹中新建一个html file 2 在pycharm project中 找到新建文件夹 在文件夹中新
  • 20仿函数(functors)

    1 仿函数概述 仿函数 functors 是早期的命名 新名称是函数对象 function objects 函数对象是指一种具有函数特质的对象 所以仿函数的本质就是一个行为类似函数的对象 仿函数主要用途是搭配STL算法 这种东西在调用者可以
  • Search for a Range

    Given an array of integers nums sorted in ascending order find the starting and ending position of a given target value
  • Dubbo 、 OpenFegin 远程服务调用的使用区别

    Dubbo 与 OpenFegin 都利用于远程调用层面 其中包括协议 负载均衡等都有不同的点 并且在使用上面也有不同的形式 简约记录一下两者的用法 1 服务端 dubbo 1 添加dubbo依赖 2 服务类添加 DubboService
  • jmeter——生成多样的接口自动化html报告

    jmeter 生成多样的接口自动化html报告 一 实现目的 二 实现效果 1 jmter自带的HTML报告 2 jmeter ant报告优化 3 批量执行jmeter工具 4 jmeter allure生成测试报告 三 实现方案 1 jm
  • 数据结构与算法——线性表

    个人主页 bit 系列专栏 Linux Ubuntu 入门必看 C语言刷题 目录 2 1线性表的定义和特点 2 2 案例引入 2 3 线性表的定义 2 1线性表的定义和特点 线性表是具有相同特新的数据元素的一个有限序列 列如 同一线性表中的
  • 解决:Error [ERR_REQUIRE_ESM]: require() of ES Module C:\Users\辰之星\AppData\Roaming\npm\node_modules\n

    解决 Error ERR REQUIRE ESM require of ES Module C Users 辰之星 AppData Roaming npm node modules nrm node modules open index j
  • 特征工程是什么?

    特征工程是指对原始数据进行预处理和转换 以提取出对机器学习算法建模有用的特征的过程 特征工程是机器学习中非常重要的一步 它可以显著影响模型的性能 下面是一些常见的特征工程技术和方法 数据清洗 处理缺失值 异常值和重复值 确保数据的质量和完整
  • taro请求工具封装

    taro框架是一个跨端兼容的开发框架 自带了请求相关的API 虽然灵活 但是封装程度并不高 会导致比较多的代码冗余 因此封装了一个请求相关的工具 思路如下 1 请求和响应需要拦截器 针对不同的情况做不同的处理 2 开发中分为开发 测试 生成
  • Ajax跨域问题

    什么是跨域问题 跨域问题来源于JavaScript的 同源策略 即只有 协议 主机名 端口号 如存在 相同 则允许相互访问 也就是说JavaScript只能访问和操作自己域下的资源 不能访问和操作其他域下的资源 跨域问题是针对JS和ajax
  • ELK多个日志文件创建多个项目索引

    一 背景 我的elk架构是filebeat redis logstash elasticsearch kibana 我的想法是 我一台服务器多个程序有多个日志文件 在kibana里面想创建不通项目索引 指定不同日志文件 二 问题及解决思路
  • python环境安装和激活

    开始学习python了 环境的安装对与新手来说就变的比较麻烦 这里就会为大家介绍pycharm和python解释器的安装 python解释器的安装 这里介绍windows安装方式 mac安装方法类似 python解释器下载地址 https
  • STL源码阅读-traits与迭代器

    迭代器模式 提供一种方法 使之能够依序访问容器的各个元素 而又无需暴露容器的内部表述方式 STL设计的中心思想在于将数据容器和算法分离开 容器和算法分开设计 迭代器则是两者之间的胶着剂 一般迭代器的设计与容器细节相关 所以一般交给容器的设计
  • 《Effective C++》 全书内容提炼总结

    个人博客地址 https cxx001 gitee io 本文阅读说明 孔子云 取乎其上 得乎其中 取乎其中 得乎其下 取乎其下 则无所得矣 对于读书求知而言 这句古训教我们去读好书 最好是好书中的上品 经典书 Effective C 就是
  • 通过CSS实现 文字渐变色 的两种方式

    主要实现文字渐变色有两种方式 background 属性 mask 属性 1 background 属性 效果图如下 span 这 span