当前位置:首页>>软件教程>>网页制作>>新闻内容
玩转表单之花样表单
作者:Redidea 发布时间:2003-10-7 14:57:54 文章来源:yesky
  二、表单外观的美化

  很多时候,我们仅仅为了实现数据采集这个功能来使用表单,常看到的表单都是“千人一面”、毫无生气,本专题尝试着来改变这一现象,试图赋予表单一个丰富多彩的面貌。
表单的外观,也是最为直接的花样,可以通过改变它来实现特效,本文分两个出发点来讲述:CSS魔法和图像魔法。

  1、CSS魔法


CSS,就是大家知道的层叠样式单,它可以定义页面元素的外观,包括字体样式、背景颜色和图像样式、边框样式、补白样式、边界样式等等,下面就从这几个方面出发,讨论怎样将CSS应用到表单中,彻底美化它!

  1.1 字体样式的应用


  字体样式包括:字体族科(font-family)、字体风格(font-style)、字体变形(font-variant)、字体加粗(font-weight)、字体大小(font-size)、字体(font),具体的定义方法,在这里不详细讲述,可以参考它的资料。
  也许你已经注意到,按钮上的文字不漂亮,其实可以通过CSS字体样式来解决,同样地,其它的几个涉及到文字的表单项,例如,文本框、多行文本框、口令框、下拉选择框都可以应用字体样式。
  为了充分展示这些应用,下例特别设计了几种样式,在实际应用中,不必这么凌乱,灵活运用:

 样例12:
表单元素的字体样式展示







  分析:
  • 文本框里的文字是加粗的,大小是9pt,字体是宋体,代码:
    <input type="text" name="formExam" size="10" maxlength="10" style="font-family:宋体; font-size: 12px; font-weight: bold" value="加粗">
  • 口令框文字是红色的,代码:
    <input type="password" name="formExam3" style="font-size: 9pt; color: #FF0000" size="8" maxlength="8">
  • 下拉框文字颜色是红色的,字体是Verdana,大小是9pt,代码:
    <select name="select" size="1" style="font-family:Verdana,Arial; font-size: 9pt; color: #FF0000">
    <option value="2" selected>yesky.com</option>
    <option value="1">redidea.net</option>
    </select>
  • 多行文本框了的字体是Verdana,有下划线,大小是9pt,代码:
    <TEXTAREA name="formExam2" cols="30" rows="3" style="font-family:Verdana, Arial; font-size: 9pt; color: #000099; text-decoration: underline" align=right>underline css style</TEXTAREA>
  • 发送1和发送2按钮的文字不同,是因为发送1按钮使用了9pt的宋体文字,所以比较美观,发送1按钮的代码:
    <input type="submit" name="Submit" value="发送1" style="font-family:宋体; font-size: 9pt;">


  小结:只要我们对字体的样式熟悉了,就可以灵活多变,不一定要在标签里面使用style来定义,完全可以在<head>里定义,或者外部引用CSS文件,用到的时候引用一下就能达到预期的效果。

  1.2 背景颜色和图像样式的应用

  有很多时候,网页由于颜色的搭配,不得不对表单的背景颜色和图像样式进行设计,背景颜色利用background-color属性,背景图像利用background-image属性,颜色和图像同样能够得到意想不到的效果。

 样例13: 表单元素的背景展示


复选 单选



  分析:

  • 文本框背景是黑色的,字体是白色的,代码:
    <input type="text" name="RedFld" size="10" maxlength="10" style="color: #FFFFFF; background-color: #000000">
  • 口令框背景是灰色的,代码:
    <input type="password" name="RedFld3" size="10" maxlength="10" style="background-color: #999999">
  • 单选和复选按钮的背景是红色的,代码:
    <input type="checkbox" name="checkbox" value="checkbox" style="background-color: #FF0000">
    <input type="radio" name="radiobutton" value="radiobutton" style="background-color: #FF0000">
  • 下拉选择框的选项是丰富多彩的背景,代码:
    <select name="select2" size="1">
    <option selected style="background-color: #FF0000">yesky.com</option>
    <option style="background-color: #0000CC">redidea.com</option>
    <option style="background-color: #009900">chinabyte.com</option>
    <option style="background-color: #ff33cc">sina.com</option>
    <option style="background-color: #999999">sohu.com</option>
    </select>
  • 多行文本框的背景是一个图像,代码:
    <TEXTAREA name="RedFld2" cols="25" rows="3" wrap="VIRTUAL" style="background-image: url(back.gif)"></TEXTAREA>
  • submit1按钮的背景是黄色的,代码:
    <input type="submit" name="Submit3" value="Submit1" style="background-color: #FF9900">
  • submit2按钮的背景是一个图像,代码:
    <input type="submit" name="Submit22" value="Submit2" style="background-image: url(back.gif)">


  小结:用好background-color属性和background-image属性,就可以设计很出“色”表单了。

  1.3 边框样式的应用

  也许你觉得表单的边框过于死板,我们能否设计单线条,或者其它的边框样式呢?当然可以!

  和边框有关的属性有:边框式样border-style、上边框border-top、右边框border-right、下边框border-bottom、左边框border-left、边框颜色border-colr、边框宽度 border-width、上边框宽度border-top-width、右边框宽度border-right-width、下边框宽度border-bottom-width、左边框宽度border-left-width、边框 border,这里不作详细的讲述,请参考有关资料。

 样例14:
8种边框形式的展示




复选 单选

  分析:

  • 文本框有8种类型边框样式,即border-style,分别展示在本例中,
    边框宽度的设置有一个规律:
    border-width: [ thin | medium | thick | <长度> ]{1,4}
    边框宽度用一到四个值来设置元素的边框宽度,它们分别被应用于上、右、下和左边框宽度。如果只给出一个值,它被应用于所有边框宽度。如果两个或三个值给出了,省略了的值与对边相等
    例如:<input type="text" name="RedF" style="border-color: #006600; border-style: dotted; border-width: 1px">
    边框颜色的设置有一个规律:
    border-colr: <颜色>{1,4}
    边框颜色用一到四个值来设置元素的边框颜色。如果四个值都给出了,它们分别被应用于上、右、下和左边框颜色。如果只给出一个值,它被应用于所有边框颜色。如果两个或三个值给出了,省略了的值与对边相等。
  • 对于多行文本框以及按钮,设置边框的方法和文本框一样,不再陈述;
  • 由于下拉选择框Select不支持边框的设置,所以对它设置是徒劳的;
  • 单选按钮和复选按钮的边框,设置的效果不十分协调,所以建议不要对它们设置,不然有“画蛇添足”之感;


 样例15:
边框的特殊设计展示

  聪明的读者一定会想到,如果设计单边框,一定更加漂亮,对!下面我们来尝试以下部分边框的设置效果,本例仅仅以Solid和dotted两种类型的边框作演示,其它类型的边框原理相同:


代码:style="background-color: #FFFFFF; border-color: #000099; border-style: solid; border-width: 0px 0px 1px"


代码:style="background-color: #FFFFFF; border-color: #CCCCCC black #FF0000; border-style: solid; border-width: 1px 0px"


代码:style="background-color: #FFFFFF;border-left: 1px dotted #ff0000; border-right: 1px dotted #ff0000; border-top: 1px dotted #ff0000; border-bottom:1px solid #000000"
注意:边框类型的外观如下:

  • none :无边框。与任何指定的border-width值无关;
  • dotted :点线;
  • dashed :虚线;
  • solid :实线边框;
  • double :双线边框。两条单线与其间隔的和等于指定的border-width值;
  • groove :3D凹槽;
  • ridge :边框突起;
  • inset :3D凹边;
  • outset :3D凸边;

  2、图像魔法

  图像,是网页的重要元素,能否应用到表单中呢?接下来,我们用图像来改造死板的表单,分两个部分来探讨:用图像代替按钮、用背景图美化表单元素。

  2.1 用图像代替按钮


由于默认的表单按钮太丑陋,绝大多数的网站采用了图像按钮,那么,我们通过两个实例来看看怎样实现的:

样例16
:用图像代替提交按钮:

  当只有一个提交按钮的时候,可以简单地实现,不用加事件函数,代码是:
<input type="image" name="..." src="url" width="" height="..." border="...">

  除了标签改为input type="image"以外,其它的属性和<img>标签的属性是一样的,例如:


  是不是只要用图片就可以代替所有的按钮呢?是的,不过,不是上面这么简单了,必须加上事件函数,不然的话,图片都是提交按钮,不能完成复位等功能,看看下面的例子就知道了:

样例17
:用图片代替所有的表单按钮:
注意:

  • 代替submit按钮的图片代码格式是
    <input type="image" name="..." src="..." onClick="document.formName.submit()">
  • 代替reset按钮的代码图片格式是
    <input type="image" name="..." src="..." onClick="document.formName.reset()">
    注:这里的formName是表单的name属性值。

  2.2 用背景图美化表单元素

  其实,前面已经提到过,用background-image:url()属性来定义表单元素的背景图,这里仅举一例,可以看到,除了select没有效果以外,其它的都可以配合网页的背景来设置它们。

样例18:背景图的设置



最新更新
·如何去掉ECShop2.7中的Powered by ECSh
·在IE7下生成高质量CSS缩略图
·解决Dreamweaver打开和关闭时出现JavaS
·影响搜索引擎排名的因素2009版
·IE6/IE7/IE8/Firefox/Chrome/Safari的C
·Flash对联广告及关闭按钮制作方法
·Discuz! 7中如果设置帖子中显示图片而不
·5种方法立刻写出更好的CSS代码
·兼容IE和Firefox的按图片宽度缩放的CSS
·兼容Firefox和IE浏览器的“加入收藏”代
相关信息
·玩转表单之常用技巧
·玩转表单之表单提交
·玩转表单之表单概述
画心
愚爱
偏爱
火苗
白狐
画沙
犯错
歌曲
传奇
稻香
小酒窝
狮子座
小情歌
全是爱
棉花糖
海豚音
我相信
甩葱歌
这叫爱
shero
走天涯
琉璃月
Nobody
我爱他
套马杆
爱是你我
最后一次
少女时代
灰色头像
断桥残雪
美了美了
狼的诱惑
我很快乐
星月神话
心痛2009
爱丫爱丫
半城烟沙
旗开得胜
郎的诱惑
爱情买卖
2010等你来
我叫小沈阳
i miss you
姑娘我爱你
我们都一样
其实很寂寞
我爱雨夜花
变心的玫瑰
犀利哥之歌
你是我的眼
你是我的OK绷
贝多芬的悲伤
哥只是个传说
丢了幸福的猪
找个人来爱我
要嫁就嫁灰太狼
如果这就是爱情
我们没有在一起
寂寞在唱什么歌
斯琴高丽的伤心
别在我离开之前离开
不是因为寂寞才想你
爱上你等于爱上了错
在心里从此永远有个你
一个人的寂寞两个人的错