javascript - 如何在 CSS3/Javascript 中创建 "highlighting"效果?

标签 javascript jquery css jquery-effects

我有一段文本,单击时会通过更改其背景颜色来突出显示。我想为突出显示设置动画,以便背景颜色从左到右逐渐变化,就好像有人实际上在突出显示文本一样。关于如何使用 CSS3 和/或 Javascript/jQuery 实现这一点有什么想法吗?

最佳答案

如果您不介意某些 CSS3 独有的功能,您可以使用过渡、渐变和 background-size:

.highlightable {
    background-size: 0 100%;
    background-repeat: no-repeat;
    -webkit-transition: background-size 0.5s ease-out;
    -moz-transition: background-size 0.5s ease-out;
    -ms-transition: background-size 0.5s ease-out;
    -o-transition: background-size 0.5s ease-out;
    transition: background-size 0.5s ease-out;
}

.highlightable.highlight {
    background-image: -webkit-linear-gradient(yellow, yellow);
    background-image: -moz-linear-gradient(yellow, yellow);
    background-image: -ms-linear-gradient(yellow, yellow);
    background-image: -o-linear-gradient(yellow, yellow);
    background-image: linear-gradient(yellow, yellow);
    background-size: 100% 100%;
}​

Here's a demo.

关于javascript - 如何在 CSS3/Javascript 中创建 "highlighting"效果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10254441/

相关文章:

javascript - 需要使用 javascript 代码运行警报字符串

javascript - 自动重新加载 OpenLayers.Layer.Text 标记的数据

javascript - React Native PureComponent 渲染

html - 使用 CSS3 可以创建这种图像 mask 效果吗?

html - <select> 高度在 IE7/8 中不会扩展到 100%

javascript - 如何在 Cypress 中获取所有特定按钮并单击具有特定数据 ID 的每个按钮

c# - 用于清除文本区域/文本框内容的按钮

android - 网站无法在移动设备和低分辨率PC显示器中正确显示

悬停时 jQuery 淡入无效 : div with jpg inside div

javascript - 使用此 jquery 更改 chrome 自动填充黄色