文本轮廓效果是什么?


有时,我们只需要显示文本的轮廓,并移除文本的填充。我们也可以称之为轮廓效果。

我们可以使用各种CSS属性来为文本生成轮廓效果。例如,我们可以向文本添加边框,并移除文本的填充颜色以向文本添加轮廓效果。

这里,我们有三种不同的方法可以使用HTML和CSS显示带有轮廓效果的文本。

使用各种CSS属性

在这种方法中,我们将使用三个CSS属性来向文本添加轮廓效果。第一个是“-webkit-text-fill-color”,用于将文本的填充颜色更改为与背景颜色相同。第二个是“-webkit-text-stroke-width”,用于添加文本的描边宽度,第三个CSS属性是“-webkit-text-stroke-color”,用于向文本添加轮廓颜色。

语法

用户可以按照以下语法使用三个不同的CSS属性来向文本添加轮廓效果。

-webkit-text-fill-color: color;
-webkit-text-stroke-width: size;
-webkit-text-stroke-color: color;

在上面的语法中,我们设置了文本的填充颜色、描边宽度和描边(即轮廓颜色)。

示例1

在下面的示例中,我们有一个类名为“text1”的div元素,其中包含一些文本。我们在CSS中设置了文本的字体大小。此外,为了向文本添加轮廓效果,我们为文本设置了白色填充颜色,“1px”描边宽度和“蓝色”描边颜色以显示蓝色轮廓。

在输出中,用户可以看到带有蓝色轮廓的文本。

<html>
<head>
   <style>
      .text1 {
         font-size: 50px;
         -webkit-text-fill-color: white;
         -webkit-text-stroke-width: 1px;
         -webkit-text-stroke-color: blue;
      }
   </style>
</head>
<body>
   <h2>Using the <i> different CSS properties </i> to add outline effect on the text.</h2>
   <div class = "text1">This text has a default background.</div>
</body>
</html>

示例2

在下面的示例中,我们为div元素设置了红色背景。接下来,我们使用“红色”作为填充颜色,使其填充颜色与背景颜色相同。这里的描边宽度为“1.2px”,描边颜色为“黄色”。

在输出中,用户可以看到在红色背景上带有黄色轮廓的文本。

<html>
<head>
   <style>
      .text {
         font-size: 50px;
         width: 600px;
         height: auto;
         background-color: red;
         -webkit-text-fill-color: red;
         -webkit-text-stroke-width: 1.2px;
         -webkit-text-stroke-color: yellow;
      }
   </style>
</head>
<body>
   <h2>Using the <i> different CSS properties </i> to add outline effect on the text</h2>
   <div class = "text"> This text has a red background. </div>
</body>
</html>

使用“text-shadow” CSS属性

在这种方法中,我们将使用“text-shadow” CSS属性为文本生成轮廓效果。如果我们将文本颜色设置为与背景颜色相同来隐藏文本,并且只显示文本阴影,则可以生成轮廓效果。

语法

用户可以按照以下语法使用“text-shadow” CSS属性来向文本添加轮廓效果。

text-shadow: x-offset y-offset blur color;

“text-shadow”属性采用4个不同的值来设置阴影。第一个是x偏移量,第二个是y偏移量,第三个是模糊值,第四个是阴影颜色。

示例3

在下面的示例中,div元素包含文本。在CSS中,我们将背景颜色和字体颜色设置为相同。之后,我们使用“text-shadow” CSS属性添加轮廓效果。这里,我们使用了4对4个值作为“text-shadow”的值。第一对用于右侧阴影,第二对用于下侧阴影,第三对用于左侧阴影,最后一对用于上侧阴影。

实际上,它显示的是文本阴影而不是描边,从而产生了轮廓效果。

<html>
<head>
   <style>
      .text {
         color: rgb(117, 117, 235);
         font-size: 50px;
         background-color: rgb(117, 117, 235);
         text-shadow: -1px -1px 2px red, 1px -1px 2px red, -1px 1px 2px red, 1px 1px 2px red;
      }
   </style>
</head>
<body>
   <h2>Using the <i> text-shadow CSS property </i> to add outline effect on the text</h2>
   <div class = "text"> Welcome to the TutorialsPoint! </div>
</body>
</html>

将文本添加到<SVG>标签中并为文本应用描边

在这里,我们将文本转换为SVG图像。之后,我们将使用各种CSS属性来设置描边颜色、填充颜色、描边宽度等,以向文本添加轮廓效果。

语法

用户可以按照以下语法通过将文本转换为SVG来向文本添加轮廓效果。

paint-order: stroke;
fill: color;
stroke: color;

在上面的语法中,我们设置了文本的填充颜色。此外,我们还设置了文本的描边颜色。“paint-order: stroke” CSS属性允许我们在它们彼此相交时通过描边来覆盖填充颜色。

示例4

在下面的示例中,我们使用了<Svg> HTML标签创建一个HTML元素,并使用<text> HTML标签在SVG中添加文本。在CSS中,我们将“stroke-width”设置为3px以显示3px的轮廓,并将“stroke-linejoin”设置为round,以便每当两条线连接时,它们都以圆形形状连接。此外,我们使用了“fill: white”将文本颜色设置为与背景颜色相同,并使用“stroke”设置为棕色以显示带有棕色轮廓的文本。

<html>
<head>
   <style>
      svg {
         font-size: 35px;
         width: 490px;
         height: 100;
      }
      .text {
         stroke-width: 3px;
         stroke-linejoin: round;
         paint-order: stroke;
         fill: white;
         stroke: brown;
      }
   </style>
</head>
<body>
   <h2>Using the <i> SVG text </i> to add outline effect on the text</h2>
   <svg viewBox = "0 0 490 100">
      <text class = "text" x = "10" y = "45"> This text is in the svg element </text>
   </svg>
</body>
</html>

我们已经看到了三种向文本添加轮廓效果的方法。第一种方法使用三个不同的CSS属性来更改文本的填充颜色并设置文本的描边。

第二种方法显示“text-shadow”而不是显示文本。第三种方法将文本转换为SVG,并使用与SVG相关的各种CSS属性来向文本添加轮廓效果。

更新于:2023年4月24日

浏览量:285

启动您的职业生涯

通过完成课程获得认证

开始学习
广告