CSS3实现文字描边的2种方法

2020-04-14 09:40:59

参考地址 CSS3实现文字描边的2种方法

 问题

    最近遇到一个需求,需要实现文字的描边效果,如下图

          

 

  解决方法一

        首先想到去看CSS3有没有什么属性可以实现,后来被我找到了text-stroke

      该属性是一个复合属性,可以设置文字宽度和文字描边颜色

      该属性使用很简单:text-stroke:1px #f00;1px是文字宽度,#ff是文字描边颜色)

 

    本以为该属性的兼容性会及时止住我微微上扬的嘴角,随后逐渐凝固

    但出乎意料的是大多浏览器已经开始支持该属性,只需要加上前缀-webkit-即可

 

  Demo

复制代码

<!DOCTYPE html><html>
    <head>
        <meta charset="UTF-8">
        <title>text-stroke-文字描边</title>
        <style>
            .demo {
                color: mistyrose;
                text-align: center;
                font-family: Verdana;
                font-size: 30px;
                font-weight: bold;
            }
            .stroke {
                -webkit-text-stroke: 1px greenyellow;
            }
        </style>
    </head>
 
    <body>
        <div class="demo">
            <p>没有添加描边</p>
            <p class="stroke">添加了字体描边</p>
        </div>
    </body></html>

复制代码

 

 

  解决方法二(推荐)

    偶然间发现一种即使不用text-stroke属性也能够实现文字描边的方法—— text-shadow

      并且text-shadow属性的兼容性更好,也不用加前缀-webkit-

 

    Demo

复制代码

<!DOCTYPE html><html>
     <head>
           <meta charset="UTF-8">
           <title>text-shadow-文字描边</title>
           <style>
                .demo {
                    text-align: center;
                     font-family: Verdana;
                     font-size: 30px;
                     font-weight: bold;
                     color: red;
                }
                
                .stroke {
                     text-shadow: #000 1px 0 0, #000 0 1px 0, #000 -1px 0 0, #000 0 -1px 0;
                }
           </style>
     </head>
     <body>
           <div class="demo">
                <p>没有添加描边</p>
                <p class="stroke">添加了字体描边</p>
           </div>
     </body></html>

复制代码


  • 2020-12-03 10:43:18

    xshell 连接 wsl

    装上 ubuntu on windows 后,默认要先打开 cmd, 再运行 bash 进入 ubuntu 的 shell。 但是这个shell很难看,配色不好就算了,还存在各种复制粘贴麻烦、默认没进入 home 目录、各种报警声等问题。所以尝试用 xshell 登陆 ubuntu

  • 2020-12-03 10:48:41

    在window10和Linux子系统 WSL如何互传文件

    想将 window下下载的文件上传到 linux 子系统中,如何用命令实现,其实可以将文件直接拖拽到 linux 在window下的目录即可(C:\Users\yunan.hu\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState\rootfs)但是在linux下用命令怎么实现呢?

  • 2020-12-03 16:25:34

    WSL安装及升级WSL2

    幸好我们有了WSL(Windows Subsystem for Linux),顾名思义就是Windows中可以用Linux了,当然命令也会丰富更多,尤其是WSL2的发布,使得更多原来只能在Linux中做的事情现在也可以在Windows中干了。那么接下来我们就分别介绍WSL和WSL2的安装。

  • 2020-12-06 16:46:11

    git撤销pull

    刚刚不小心pull了一下,有错误,想撤回怎么办。

  • 2020-12-06 19:05:13

    visual studio 配置 intellij idea快捷键

    我原本从intellij idea转换到visual studio是因为webstorm没办法远程开发,而visual studio有remote wsl,和remote ssh,看着挺不错的样子。