2013-04-21 109 views
4

我有一个div与背景图像,这样的div里面我有另一个更小的元素,并有白色的背景颜色。在这个元素的内部,我有我不想透明的文字,所以我们可以看到第一个div的背景图像。CrossBrowser透明文本与css

试过申请color: transparent;但它似乎没有工作。有可靠的,CSS的方法来实现这一目标?

+2

[此链接](http://www.codicode.com/art/background_text_effect_css_picture_svg_mask.aspx)可以帮助您使用SVG来一个可行的解决方案。 – ScottS 2013-04-21 19:34:13

回答

0

你不行。做这种事情的唯一方法就是让“带有文本的背景”成为放置在背景图像上的图像。

+0

JavaScript怎么样,它可以实现吗? – Ilja 2013-04-21 17:41:16

+0

没有。除了可能使用画布,但在IE8或更低版本中无法使用。 – 2013-04-21 17:41:48

+0

好thnx的信息,这是一个无赖..我会给你一个答案,一旦我可以 – Ilja 2013-04-21 17:42:50

0

实际上,这只适用于CSS。在白色背景的较小元素中,您可以使用CSS3和IE 6-8的后备。对于后备,您可以使用透明的PNG。

为白色BG的CSS3代码如下:

background-color: rgba(255,255,255,0.5) 

我成立了一个codepen你在行动中看到的代码。 http://codepen.io/DheerG/pen/tkKqC

另外,如果您希望小元素中的所有内容都是透明的,您可以使用css opacity元素。

opacity: 0.6; 
/* IE 8 */ 
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; 
/* IE 5-7 */ 
filter: alpha(opacity=60); 
+1

你误解了OP是渴望。他希望_文本本身的字母_能够从背景中显示图像(文本是完全透明的),但是文本周围的白色是纯白色的(完全不透明;因此就像字母被切掉)。你的解决方案只是让文字和白色褪色一些,而不是达到那种效果。 – ScottS 2013-04-22 01:43:11

+0

现在你提到它,这个问题可能意味着什么。关于较小的元素与白色背景的问题的部分扔我想我。因此,我认为OP想要让父节点透明,并且不让孩子继承不透明。 – Dheer 2013-04-22 14:26:31