4

在这里看到讨论,但已经2年了!

我不知道我是否使用了这个权利,但我有以下sass/compass代码:

+text-shadow(red 0 3px 0 3px)

生成以下内容css

text-shadow: red 0 3px 3px, red 0 3px 0 3px;
text-shadow: red 0 3px 0 3px, red 0 3px 0 3px;

这在 Chrome/Safari/Firefox/Opera 中都不起作用。

这是声明中的内容还是该spread功能真的从规范中删除了?

4

3 回答 3

10

这并不理想,但由于 text-shadow 接受逗号分隔的值列表,因此您可以将文本阴影“堆叠”在彼此之上以获得更不透明的结果。

text-shadow: 0 0 1px white, 0 0 2px white, 0 0 3px white;
于 2018-03-13T11:04:01.957 回答
8

在规格中说,

此属性接受以逗号分隔的要应用于元素文本的阴影效果列表。值被解释为 'box-shadow' [CSS3BG]。(但请注意,不允许展开值。)阴影应用于元素的所有文本以及它指定的任何文本装饰。

于 2013-01-05T20:47:50.343 回答
-1

Compass 不允许在使用 mixin 时设置传播text-shadow值:正如他们在文档中所说:

如果任何阴影有一个 spread 参数,这将导致 mixin 发出两次阴影声明,第一次没有 spread,然后包含 spread。这允许您逐步增强支持 spread 参数的浏览器。

或者,您可以使用 mixin:single-text-shadow 然后传递所有值,包括用逗号分隔的扩展值。

single-text-shadow(0, 3px, 0, 3px, red);

这将按您的预期工作。

于 2013-01-05T20:42:00.297 回答