javascript - 以文本作为掩码的 CSS div

标签 javascript jquery html css

我正在尝试使用 HTML 中彩色 div 的大文本实现 mask 式效果。我希望这个蒙面文本显示 div 后面的图像部分。然而;而不是在 div 本身上使用 background-clip 属性和 background-image - 我希望简单地揭示元素下面的内容(在我的例子中,图像)。 我曾尝试使用带有复合路径的 svg 图像,但事实证明它们太难处理了。 我还有其他方法可以做到这一点吗? CSS? jQuery 插件? A not-so-successful attempt with svg

最佳答案

基于 this article for applying a text mask ,您可以使用 Canvas 标签执行此操作。

<div id="bg"><canvas id="overlay" width="240" height="70"></canvas></div>
<script>
// Get a handle to our canvas
var ctx = document.getElementById('overlay').getContext("2d");

// Choose font
ctx.font = "Bold 36px 'Helvetica'";

// Draw black rectangle
ctx.fillStyle = "black"; 
ctx.fillRect(0,0,230,70); 

// Punch out the text!
ctx.globalCompositeOperation = 'destination-out'; 
ctx.fillText("Some Text", 25, 50);
</script>

http://jsfiddle.net/6aVGU/

关于javascript - 以文本作为掩码的 CSS div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21593037/

相关文章:

javascript - 如何检查所有 javascript/css 是否正确加载

javascript - HTML中导入多个js文件&lt;script/>和&lt;script&gt;&lt;/script&gt;的区别

javascript - 自定义警报框 angularjs

javascript - 在 div 中相对于 div 定位图像

javascript - jquery .load() 函数不返回最新帖子

javascript - DIV 在其内容之前创建换行符

php - 使用 javascript 禁用 Ckeditor

jquery - CSS 动画 : Fade in + transform animation for each word not working

html - 如何使用 html/css 将容器 div 从页眉拉伸(stretch)到页脚?

html - 将从 MySQL 获取用户的数据列表转换为组合框