您现在的位置是:网站首页> 编程资料编程资料
使用CSS3美化HTML表单的技巧演示
2021-09-05
1067人已围观
简介 这篇文章主要介绍了使用CSS3美化HTML表单的技巧演示,包括单选框元素的隐藏以及选项之间的间隔等调整方法,需要的朋友可以参考下
表单是做网页中很常使用到的元素,但预设的样式都是丑丑的,笔者今天要教各位快速做出自订的单/多选框样式,让您的表单硬是要跟别人不一样。
基本 HTML 就是一个单选框元素加上标签元素:
- <body>
- <h3>性别(单选)h3>
- <div class="abgne-menu-20140101-1">
- <input type="radio" id="male" name="sex">
- <label for="male">男性label>
- <input type="radio" id="female" name="sex">
- <label for="female">女性label>
- <input type="radio" id="other" name="sex">
- <label for="other">其它label>
- div>
- body>
每一个标签元素中特过 for 属性来跟单选框元素一一配对,当点击到标签元素时,则同时会触发点击到相对应的单选框。而我们不想要丑丑的单选框元素,所以笔者先用 CSS 将它隐藏起来。
- .abgne-menu-20140101-1 input[type="radio"] {
- display: none;
- }
隐藏好之后,接下来就是将标签元素进行改造一下:
- .abgne-menu-20140101-1 input[type="radio"] + label {
- display: inline-block;
- background-color: #ccc;
- cursor: pointer;
- padding: 5px 10px;
- }
笔者只是做一些很简单的样式设计,同时加上自订鼠标游标为 pointer,让使用者知道它是可以点击的。
而比较特别的是 + 这个符号,它是相邻兄弟选择器(Adjacent Sibling Selector)。范例中要找的标签元素是得要跟在单选框元素后的才行,若是改成 #male + label 的话:
就真的只有在 #male 后的下一个标签元素才会有效果,其它更后面的兄弟元素则是不会有反应的唷。
好啦~现在若没问题的话,就会看到基本的样式出来了:
最后只要再搭配 :checked 拟类别(Pseudo-classes)就能收工下班啦!
- .abgne-menu-20140101-1 input[type="radio"]:checked + label {
- background-color: #f00;
- color: #fff;
- }
这边是针对被点选到的单选框元素后的下一个标签元素进行设定。整个完成后的样式就变成了:
而多选框的自订方式也可以依此类推来设定。
- <body>
- <h3>专长(多选)h3>
- <div class="abgne-menu-20140101-2">
- <input type="checkbox" id="jquery" name="skill" checked>
- <label for="jquery">jQuerylabel>
- <input type="checkbox" id="css3" name="skill">
- <label for="css3">CSS3label>
- <input type="checkbox" id="html5" name="skill">
- <label for="html5">HTML5label>
- <input type="checkbox" id="angularjs" name="skill">
- <label for="angularjs">AngularJSlabel>
- div>
- body>
CSS 的部份只要将 input[type="radio"] 改成 input["checkbox"] 就可以了
- .abgne-menu-20140101-2 input[type="checkbox"] {
- display: none;
- }
- .abgne-menu-20140101-2 input[type="checkbox"] + label {
- display: inline-block;
- background-color: #ccc;
- cursor: pointer;
- padding: 5px 10px;
- }
- .abgne-menu-20140101-2 input[type="checkbox"]:checked + label {
- background-color: #f3d42e;
- }
是不是很简单呢~
下面则是要教大家如何凭空产生出单/多选框的元素
相关内容
- 利用CSS3的border-radius绘制太极及爱心图案示例
- 深入剖析z-index属性CSS中的z-index属性基本使用教程详解CSS中的z-index属性在层叠布局中的用法深入解析CSS中z-index属性对层叠顺序的处理div层调整z-index属性无效原因分析及解决方法举例详解CSS的z-index属性的使用css3的transform造成z-index无效解决方案css z-index层重叠顺序使用介绍CSS教程 彻底掌握Z-index属性CSS属性探秘系列(七):z-indexdiv没有设置颜色时z-index不起作用的解决方法
- 一句话解决傻傻的多核浏览器切换浅谈原生页面兼容IE9问题的解决方案新版chrome浏览器设置允许跨域的实现css hack之\9和\0就可能对hack IE11\IE9\IE8无效css区分ie8/ie9/ie10/ie11 chrome firefox的代码解决CSS浏览器兼容性问题的4种方案常见的浏览器兼容性问题(小结)border-radius IE8兼容处理的方法浅谈遇到的几个浏览器兼容性问题base64图片在各种浏览器的兼容性处理 对常见的css属性进行浏览器兼容性总结(推荐)
- 深入理解CSS height属性设置元素的高度CSS中的line-height行高属性学习教程CSS中的line-height行高属性的使用技巧小结CSS中行高line-height属性的一些使用技巧css line-height属性的使用技巧css属性行高line-height的用法详解css height属性中的calc方法详解
- CSS针对IE6实现网页图片底部留出空白的方法针对IE6的一些CSS Hack编写时的注意点小结浅谈前端制作中,IE6还有必要兼容吗
- CSS3的常见transformation图形变化用法小结CSS3中设置3D变形的transform-style属性详解浅谈CSS3中的变形功能-transform功能
- 使用CSS3的font-face字体嵌入样式的方法讲解
- 利用CSS使footer固定在页面底部的实例代码CSS实现footer“吸底”效果详解CSS五种方式实现Footer置底html的footer置于页面最底部的简单实现方法详解HTML5将footer置于页面最底部的方法(CSS+JS)
- 几个CSS3的flex弹性盒模型布局的简单例子演示
- CSS3中的transform属性进行2D和3D变换的基本用法css3 transform属性详解css3中transform属性实现的4种功能