> 웹 프론트엔드 > 프런트엔드 Q&A > CSS에서 다양한 텍스트 색상을 얻는 방법

CSS에서 다양한 텍스트 색상을 얻는 방법

青灯夜游
풀어 주다: 2022-08-30 18:47:10
원래의
4583명이 탐색했습니다.

두 가지 방법: 1. 배경 클립을 사용합니다. 구문은 "텍스트 요소 {배경 이미지: 선형 그라데이션(..); 배경 클립: 텍스트; 색상: 투명;}"입니다. 2. 마스크를 사용합니다. 구문은 "텍스트 요소 {색상: 색상 값 1;} 텍스트 요소: 이전 {마스크: 선형-그라디언트(..); 색상: 색상 값 2;}"입니다.

CSS에서 다양한 텍스트 색상을 얻는 방법

이 튜토리얼의 운영 환경: Windows7 시스템, CSS3&&HTML5 버전, Dell G3 컴퓨터.

CSS에서는 텍스트 요소에 그라데이션 효과를 추가하여 다양한 텍스트 색상을 얻을 수 있습니다. 다음은 텍스트 그라데이션 효과를 얻는 두 가지 방법을 소개합니다.

방법 1: 선형-그라디언트()+배경-클립


CSS에는 텍스트 그라데이션을 설정하는 직접적인 속성이 없습니다. 일반적으로 텍스트는 단색만 가능합니다. 그러나 배경 자르기를 사용하면 배경색이 텍스트 영역에 나타나도록 할 수 있습니다. 그러면 텍스트에 그라데이션이 있는 것처럼 보입니다.

Rendering

CSS에서 다양한 텍스트 색상을 얻는 방법

Code

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <style>
 
    .text {
        background-image: linear-gradient(to right, red, blue);
        background-clip: text;
        -webkit-background-clip: text;
        color: transparent; /*需要文字透明*/
    }
    </style>
</head>

<body>
       <h1 class="text">为你定制 发现精彩</h1>
</body>
</html>
로그인 후 복사

코드가 많지 않으니 살펴보겠습니다.

배경: 선형 그라데이션(오른쪽으로, 빨간색, 파란색); 이 줄은 배경의 그라데이션 색상을 설정합니다. 실제로는 배경색이 아닌 배경 이미지의 그라데이션 색상을 설정합니다. 배경 이미지 값은 그라데이션 색상입니다. background: linear-gradient(to right, red, blue); 这行是给背景设置为渐变色,这里注意一点,这样是简写了,其实是给background-image 设置为渐变色,不是 background-color ,是背景图 取值为渐变色。

-webkit-background-clip: text; 这行就要说到,background-clip 属性了 :

background-clip 属性 规定背景的绘制区域

语法
background-clip: border-box|padding-box|content-box;

CSS에서 다양한 텍스트 색상을 얻는 방법

上面没有说取值 text 的情况,看到前面的前缀,大家应该也能想到,它的兼容性问题了,目前还不是能所有浏览器都支持。

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

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

方式二:linear-gradient()+mask


效果图

CSS에서 다양한 텍스트 색상을 얻는 방법

代码

<!doctype html>
<html>
<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 属性,像这样  
<h1 tt="前端简单说">前端简单说</h1>  
然后content属性 这样写,content: attr(tt);

-webkit-Background-clip: text; 이 줄은 background-clip 속성에 관한 것입니다:

background-clip 속성은 배경의 그리기 영역을 지정합니다

Syntax

배경 클립: border-box|padding-box|content-box;

CSS에서 다양한 텍스트 색상을 얻는 방법CSS에서 다양한 텍스트 색상을 얻는 방법

위에서는 text의 값을 언급하지 않습니다. 이전 접두사를 보면 호환성 문제도 생각해 볼 수 있을 것입니다. 현재 , 여전히 모든 브라우저가 이를 지원하는 것은 아닙니다.

text 값은 블록 안의 텍스트가 바깥쪽으로 잘리는 자르기 영역으로 사용된다는 의미입니다. 텍스트의 배경이 블록의 배경이 되고, 텍스트 외부 영역이 잘립니다.

그래서 마지막으로 color: transparent;를 작성하여 텍스트를 투명하게 만들면 텍스트 뒤의 배경색이 표시된다는 의미입니다. 🎜🎜🎜🎜방법 2: 선형 그라데이션()+마스크🎜🎜🎜🎜🎜🎜🎜렌더링 🎜 🎜🎜CSS에서 다양한 텍스트 색상을 얻는 방법🎜🎜🎜code🎜🎜rrreee🎜코드는 많지 않으니 간단히 얘기해보겠습니다. 🎜🎜:선택한 요소에 선택하기 전에 Insert 이전에 내용. 🎜content 속성을 사용하여 삽입할 콘텐츠를 지정하세요. 🎜🎜content 값 attr은 속성 값을 가져오는 데 사용됩니다. content:attr(속성 이름);🎜🎜content: attr(text);는 요소의 텍스트 속성을 가져올 수 있습니다. 이 텍스트는 여기에 있습니다. 속성은 자체 정의된 속성입니다. 다음과 같이 tt 속성을 요소에 추가할 수도 있습니다. 🎜<h1 tt="Front-end in Brief">Front-end in Brief</h1> code> 🎜그러면 content 속성을 <code>content: attr(tt); 처럼 작성하면 작동합니다. 🎜🎜🎜두 번째 방법의 핵심인 마스크 속성에 대해 계속해서 이야기해 보겠습니다. 기사는 https://www.php.cn/css-tutorial-494998.html🎜🎜🎜간단히 말하면, 마스크 속성을 사용하면 요소의 일부를 표시하거나 숨길 수 있습니다. 🎜🎜두 번째 방법의 원리는 사진을 보면 알 수 있어요🎜🎜🎜🎜🎜 (동영상 공유 학습: 🎜웹 프론트엔드 시작하기🎜)🎜

위 내용은 CSS에서 다양한 텍스트 색상을 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
css
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿