CSS发光边框文本框效果

18,666 阅读 - 8

CSS发光边框效果 示例或许你看过Safari浏览器下,任何输入框都会有一个发光的蓝色边框,这不单纯只是蓝色边框而已,其实包含了许多CSS3技巧知识。如右图,想要获得这样的文本框其实一点也不难的。

需要注意的是,这并不是单纯的box-shadow属性而已,它的发光是像四周均匀发光,它还包含一个缓慢发光过渡效果。

下面就给大家介绍如何创造出这样别致的文本框。

了解CSS3的ShadowTransition属性

在继续学习之前,你必须要有一些Css3的基础知识。做出这一切需要你了解CSS3的Shadow和RGBaTransition属性,否则就无法理解了。

另外,这种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实现模拟漫画气泡对话效果

随机推荐

  • 龙须面

    这样的发光效果与mac系统的还是不同。mac是在输入框外缘显示光晕,而这个利用shadow,左边和上边的光晕其实是在输入框内。我是说,还可以做得更好的。

  • 这个发光效果看起来很炫

    • 知止

      确实不错

      • 影子

        借鉴你网站的评论列表样式

  • 我借鉴了 但是没效果 请问下怎么回事

    • 要用Chrome、Safari这些浏览器哦

  • nebula

    一字不漏的抄下来,但是效果不一样,点击后有一瞬间边框加粗变黑,然后才出现渐变效果。不明白为什么

  • 一字不漏的抄下来,但是效果不一样,点击后有一瞬间边框加粗变黑,然后才出现渐变效果