Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 创建透明透明或纹理化字体样式_Css_Html_Fonts - Fatal编程技术网

Css 创建透明透明或纹理化字体样式

Css 创建透明透明或纹理化字体样式,css,html,fonts,Css,Html,Fonts,是否可以指定字体样式(字体颜色等),以便代替使用纯色,我可以: 将一个HTML元素放在另一个元素的顶部,并使字体透明,这样我就可以让文本穿过顶部元素,并通过字母区域看到底部元素的内容 指定带有图像的文本(例如/至少不设置动画),以便我可以使用纹理文本而不是纯色 是否可以使用任何CSS级别/版本、HTML5或某些本机web浏览器规范 是否可以至少使用Canvas检测每个字母的区域,或者仍然完全手动检测,或者在纯HTML/HTML5/CSS中不可能检测?我认为您谈论的第一个类似于Illustra

是否可以指定字体样式(字体颜色等),以便代替使用纯色,我可以:

  • 将一个HTML元素放在另一个元素的顶部,并使字体透明,这样我就可以让文本穿过顶部元素,并通过字母区域看到底部元素的内容

  • 指定带有图像的文本(例如/至少不设置动画),以便我可以使用纹理文本而不是纯色

是否可以使用任何CSS级别/版本、HTML5或某些本机web浏览器规范


是否可以至少使用Canvas检测每个字母的区域,或者仍然完全手动检测,或者在纯HTML/HTML5/CSS中不可能检测?

我认为您谈论的第一个类似于Illustrator中的剪切遮罩?如果是这样的话,那么就有一个
背景剪辑
功能被描述,但是目前这只是webkit浏览器中的支持,我不确定IE10,因为它比其他IE版本有更多的附加兼容性

谷歌很快就出现了“带CSS的模式文本”,这就解释了这一点

编辑------------------


对于webkit浏览器,它是
webkit背景剪辑
,而对于IE9+浏览器,它只是
背景剪辑

,如果您想为文本设置透明度,只需使用:

color: rgba(0, 0, 0, .5);
在这里查看更多信息

我不知道是否有一种不同的方法可以对字母进行纹理化,但是你可以为文本编写一个解析器,用图像文件替换字母。

你可以尝试用你想要使用的文本创建一个文本。
这种方法应该适用于大多数现代浏览器。

这是一个有趣的问题,尽管我认为这是不可能的(除了IE专有的
过滤器
功能)。