7,166 次阅读 ‹ NSH Blog 网页设计 CSS发光边框文本框效果 或许你看过Safari浏览器下,任何输入框都会有一个发光的蓝色边框,这不单纯只是蓝色边框而已,其实包含了许多CSS3技巧知识。如右图,想要获得这样的文本框其实一点也不难的。 需要注意的是,这并不是单纯的box-shadow属性而已,它的发光是像四周均匀发光,它还包含一个缓慢发光过渡效果。 下面就给大家介绍如何创造出这样别致的文本框。 指引 / 跳至 [收缩] 1 了解CSS3的Shadow、Transition属性 2 制作发光边框文本框效果 3 为全局所有input组件添加边框发光效果 了解CSS3的Shadow、Transition属性 在继续学习之前,你必须要有一些Css3的基础知识。做出这一切需要你了解CSS3的Shadow和RGBa、Transition属性,否则就无法理解了。 另外,这种CSS制作的发光效果并不适合于所有浏览器,你可以到这里去了解一下浏览器的支持情况。 制作发光边框文本框效果 首先,拿一个input元素举例: <input type="text" class="sdw" /> 现在我们要让这个input组件在被成为焦点(点击)时向四周发光,并且为粉色,我只需添加一段CSS代码: .sdw:focus{ transition:border linear .2s,box-shadow linear .5s; -moz-transition:border linear .2s,-moz-box-shadow linear .5s; -webkit-transition:border linear .2s,-webkit-box-shadow linear .5s; outline:none;border-color:rgba(241,39,242,.75); box-shadow:0 0 8px rgba(241,39,232,.5); -moz-box-shadow:0 0 8px rgba(241,39,232,.5); -webkit-box-shadow:0 0 8px rgba(241,39,232,3); } 就可以了。其中靛蓝色部分的文字是利用了Transition属性产生一个过渡效果,而其中的RGB色彩可以根据个人口味进行改变。预览效果如下: 点击看看,是不是出现了闪光的效果呢? 为全局所有input组件添加边框发光效果 如果希望一个网页中所有的文字输入框出现这种效果,只需CSS全局设定即可。 在你的CSS文件中添加这么一句: input[type=text]:focus,input[type=password]:focus,textarea:focus{ transition:border linear .2s,box-shadow linear .5s; -moz-transition:border linear .2s,-moz-box-shadow linear .5s; -webkit-transition:border linear .2s,-webkit-box-shadow linear .5s; outline:none;border-color:rgba(241,39,242,.75); box-shadow:0 0 8px rgba(241,39,232,.5); -moz-box-shadow:0 0 8px rgba(241,39,232,.5); -webkit-box-shadow:0 0 8px rgba(241,39,232,3); 现在你也可以拥有类似Twitter的那样发光文本框效果。 谢谢收看。 参考资料: 几个高级CSS属性技巧美化网站显示、CSS Transition (变换动画)、CSS实现模拟漫画气泡对话效果