当像http://www.me.com这样活跃时,我如何使用 HTML5 和 CSS3 在文本字段上放置发光效果
问问题
3509 次
3 回答
5
:focus { box-shadow: 0 0 10px red; }
为红光。本质上,辉光是具有合适颜色且没有偏移的阴影。
于 2011-03-26T09:28:43.573 回答
0
他们为 div 使用 png 图像,该图像在输入字段后面移动并在没有焦点时隐藏。一切都有固定的宽度和高度,所以不需要调整图像大小。
在那里没有看到任何 CSS3 或 HTML5,但是使用 CSS3 而不是使用边框图像应该可以达到相同的效果,例如:
border-image: url("border.png") 10;
编辑:
@Lea Verou 有更好的解决方案。我昨天像这样将这种效果添加到我的一个网站
input:focus, textarea:focus,
input.ieFocusHack, textarea.ieFocusHack {
box-shadow: 0 0 10px rgb(0, 182, 255);
-moz-box-shadow: 0 0 10px rgb(0, 182, 255);
-webkit-box-shadow: 0 0 10px rgb(0, 182, 255);
behavior: url(PIE.htc);
}
input[type="submit"]:focus {
box-shadow: none;
-moz-box-shadow: none;
-webkit-box-shadow: none;
}
一些用于 IE 的 javascript(不是我自己写的),因为它不支持 :focus
$(document).ready(function() {
if (jQuery.browser.msie === true) {
jQuery('input, textarea')
.bind('focus', function() {
$(this).addClass('ieFocusHack');
}).bind('blur', function() {
$(this).removeClass('ieFocusHack');
});
}
});
使用CSS3PIE为 IE 添加 box-shadow 支持。奇迹般有效。
于 2011-03-25T21:43:07.923 回答
0
您会发现他们使用 JavaScript 和 CSS3 的组合来创建这种效果。
他们将有一个事件处理程序来处理onfocus
文本框的状态,然后使用 CSS3box-shadow
样式以及 Javascript 淡入淡出效果,
实现这一点的最佳(最简单)方法是将 jQuery 与 CSS3 属性结合起来,但也可以同时在原始 JS 中完成,如果您需要进一步解释,请发表评论。
于 2011-03-25T21:10:26.833 回答