我有一个HTML表格,上面填充了两种颜色的短句。 我想用相应颜色的条形覆盖文本,当每个块悬停时,内容必须恢复到其原始的HTML状态。
我想用JS或CSS做以下事情:
对此方法的任何帮助或更有效的方法表示赞赏。谢谢!
编辑/类似的代码可能会为我做,我唯一想念的是"原创内容"字:div:hover span {display:**ORIGINAL CONTENT**}
div:hover:before {content:"█████"}
答案 0 :(得分:1)
你可以用CSS获得类似的效果 - 在单元格上设置相同的颜色和背景,然后在悬停时切换到可读的东西:
.red {
color: red;
background-color: red;
}
.blue {
color: blue;
background-color: blue;
}
.revealer:hover td {
color: black;
background-color: white;
}
<div class="revealer">
<table>
<tr>
<td class="red">One</td>
<td class="blue">Two</td>
</tr>
<tr>
<td class="red">Three</td>
<td class="blue">Four</td>
</tr>
</table>
</div>
答案 1 :(得分:0)
如果您包含jQuery,这将执行您最初请求的内容:
$(function(){
$('td').each(function(idx){
$(this).data().originaltext = $(this).text();
$(this).html(fill_with_blocks($(this).data().originaltext));
})
$('td').hover(function(){
$(this).html($(this).data().originaltext);
},
function(){
$(this).html(fill_with_blocks($(this).data().originaltext));
});
});
function fill_with_blocks(str) {
var blocks = '';
for(var i = 0;i<str.length;i++){
blocks += '█';
}
return blocks;
}