html - 是否可以在彩色背景容器的所有图层上获得透明文本?

标签 html css

我想要实现的是悬停按钮 - 背景变为白色,文本变为透明,请记住,在我的情况下, body 充满了一些图像,运行我的代码片段。 换句话说,我想在具有给定文本形状和透明度的按钮背景中打一个洞

button {
  padding:10px;
  border:solid 5px #fff;
  color: #fff;
  background: none;
  font-weight: bold;
  font-size:2em;
}

button:hover {
  color: transparent;
  background: #fff;
}


body {
  background-image: url("https://upload.wikimedia.org/wikipedia/commons/thumb/a/a1/Mallard2.jpg/1280px-Mallard2.jpg");
  background-size: 200px;
  background-repeat: no-repeat;
}
<button>BUTTON</button>

最佳答案

当您将 mix-blend-mode 设置为 hard-light 时,灰色变为透明。

(IE 或 Edge 不支持)

你可以这样使用它:

button {
  padding:10px;
  border:solid 5px #fff;
  color: #fff;
  background: none;
  font-weight: bold;
  font-size:2em;
}

button:hover {
  color: gray;
  background-color: white;
  mix-blend-mode: hard-light;  
}


body {
  background-image: url("https://upload.wikimedia.org/wikipedia/commons/thumb/a/a1/Mallard2.jpg/1280px-Mallard2.jpg");
  background-size: 200px;
  background-repeat: no-repeat;
}
<button>BUTTON</button>

关于html - 是否可以在彩色背景容器的所有图层上获得透明文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39415616/

相关文章:

php - 两个不同的单选按钮与一种表单并使用 php 发布

css - 在行中将文本包装成两个跨度

javascript - iPhone 移动网络应用程序视网膜图像替换

html - 隐藏浏览器滚动条

html - 如何防止背景颜色隐藏框阴影?

ruby-on-rails - 如何将 HTML5 自动对焦添加到 Rails 表单?

javascript - 如何在 javascript 中更改段落中不同行的 css 样式

div id 上的 javascript 单击关闭父 div 和子 div 元素?

html - CSS3 HTML5 : Side bars position

asp.net - 如何在不使用 <table> 标签的情况下在 asp.net 中制作 colspan 和 rowspan 单元格,仅使用 <div> 标签