HTML5+CSS3+JavaScript网页开发实战 课件 模块4“加入我们”页面设计_第1页
HTML5+CSS3+JavaScript网页开发实战 课件 模块4“加入我们”页面设计_第2页
HTML5+CSS3+JavaScript网页开发实战 课件 模块4“加入我们”页面设计_第3页
HTML5+CSS3+JavaScript网页开发实战 课件 模块4“加入我们”页面设计_第4页
HTML5+CSS3+JavaScript网页开发实战 课件 模块4“加入我们”页面设计_第5页
已阅读5页,还剩92页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

模块4“’加入我们’页面设计”众所周知,在Web编程中,表单主要用于收集用户输入的数据。HTML5在保留原有HTML表单控件、属性的基础上,大大增强了表单和表单控件的功能。本模块将使用表单元素配合CSS3选择器进行“加入我们”页面的布局与样式美化。“加入我们”页面的布局与样式美化任务11.1表单<form>表单表示文档中的一个区域,此区域包含交互控件,用于向Web服务器提交信息。<form>表单可以包含input元素,如文本框、复选框、单选框、提交按钮等。<form>表单本身不可见,其常见属性如表4-1所示。表4-1

<form>表单的常见属性属性值描述actionURL处理表单提交的URLautocompleteonoff规定是否启用表单的自动完成功能methodgetpost浏览器使用何种

HTTP

方式来提交表单target_blank_self_parent_top规定在何处打开actionURLenctypeapplication/x-www-form-urlencodedmultipart/form-datatext/plainapplication/x-www-form-urlencoded:未指定属性时的默认值multipart/form-data:当表单包含type=file的input元素时使用此值text/plain:出现在HTML5中,用于调试1.1表单使用方法如下:<formaction="login.php"method="get"target="_self"><inputtype="text"name="username"><inputtype="password"name="password"><inputtype="submit"></form>1.1表单对于method属性中get和post的区别,在HTML的学习中,大家仅需先了解如下几点即可。在使用get方式时,<form>表单中的数据集被附加到action属性所指定的URL后面进行提交,其生成的URL为“login.php?username=zhangsan&password=123”。在使用post方式时,<form>表单中的数据集被包装在请求的body中发送,其生成的URL为“login.php”。如果使用get方式提交<form>表单中的用户名和密码,则显然是不安全的,因为用户名和密码将出现在URL地址上。在对安全性有要求的情况下,应该使用post方式进行提交。浏览器对URL地址的长度是有限制的,所以如果需要提交长文本内容,则应该使用post方式。1.2表单元素input元素用于为基于Web的表单创建交互式控件,以便接收来自用户的数据。input元素根据不同的type属性值,可以呈现为文本域、复选框、单选按钮、按钮等。1.text类型<inputtype="text">用于创建基础的单行文本域。text类型常用属性如表4-2所示。属性描述name文本域的名称value该属性是一个包含了文本域当前文字信息的字符串placeholder文本域为空时显示的一个示例值maxlength文本域能接收的最大字符数minlength文本域能输入的最小字符数size一个数字,指示文本域有多少个字符宽度readonly一个布尔属性,指示文本域中的内容是否应该为只读。当设置该属性后,文本域内的value值不能被修改autocomplete该属性表示这个控件的值是否可被浏览器自动填充required该属性表示此值为必填项autofocus该属性指定加载时控件具有输入焦点表4-2

text类型常用属性1.2.1

text类型示例:<inputtype="text"size="20"maxlength="10"placeholder="请输入您的姓名"requiredautofocus>运行以上代码后,浏览器的显示效果如图4-1所示。图4-1

text类型表单效果1.2.1

text类型大家需要注意以下几个属性。(1)value和placeholder。value是文本域中的输入值,它在表单获得焦点时仍然存在,并且可被表单提交。我们通常通过读取value属性值来获得用户输入的内容并提交给服务端处理。placeholder是文本域为空时显示的一个示例值,它在表单获得焦点时消失,并且不能作为文本域的value属性值,也不能被表单提交。placeholder属性通常用于设置用户输入的提示内容。1.2.1

text类型(2)size和maxlength。size属性用于规定文本域有多少个字符的宽度,而maxlength属性用于规定文本域能接收的最大字符数,如图4-2所示。<inputtype="text"size="20"maxlength="10">图4-2

size和maxlength属性效果1.2.1

text类型(3)autocomplete。autocomplete属性表示这个控件的值是否可被浏览器自动填充,例如:<formaction="user.php"method="get">

城市:<inputtype="text"name="city"autocomplete="off">

姓名:<inputtype="text"name="name"autocomplete="on"><inputtype="submit"></form>1.2.1

text类型如图4-3所示,当单击“提交”按钮后,所有在“姓名”文本框中填写过的值将被保存,并在下一次填写时起到启动提示的作用,如图4-3所示。图4-3

autocomplete属性自动填充效果1.2.1

text类型注意,autocomplete属性的启动保存功能必须具备以下3个条件。元素具有name属性或id属性。元素处于<form>表单中。表单必须具有提交按钮。与text类型较为类似的还有password、email、url、tel、number、search等类型。1.2表单元素2.textarea元素textarea元素表示一个多行纯文本编辑控件,即多行文本域。当你希望用户输入一段相当长的、不限格式的文本时,例如评论或反馈表单中的一段意见时,可以使用该元素。该元素为闭合标签,不具备value属性,其常用属性如表4-2所示。表4-2

textarea元素常用属性属性描述name设置多行文本域的名称placeholder文本域为空时显示的一个示例值rows设置多行文本域的可见行数cols设置多行文本域的可见宽度required该属性表示此值为必填项autofocus该属性指定加载时控件具有输入焦点1.2.2

textarea元素例如:图4-4多行文本域效果<textareacols="35"rows="4"placeholder="请输入个人介绍"></textarea>运行以上代码后,浏览器的显示效果如图4-4所示。拖动多行文本域的右下角,可以任意改变其大小,如果需要禁用拖动缩放功能,则可以对该元素设置“resize:none”样式。1.2表单元素3.file类型<inputtype="file">可以使用户选择一个或多个文件上传到服务器中。file类型常用属性如表4-3所示。表4-3

file类型常用属性属性描述accept描述允许的文件类型capture捕获图像或视频数据的源multiple表示用户可以选择多个文件files列出了已选择的文件autofocus该属性指定加载时控件具有输入焦点1.2.3

file类型(1)accept属性。accept属性用于描述允许的文件类型。例如,当指定了允许的类型为gif和jpeg时,在选择文件时只能选择对应类型的图片文件,如果没有指定accept属性,则可以选择任意类型的文件,如图4-5所示。<inputtype="file"accept="image/gif,image/jpeg">图4-5

accept属性效果(2)capture属性。capture属性指定了捕获图像或视频数据的源。在WebApp上指定capture属性,可以调用系统默认照相机、摄像机和录音机功能。capture属性可以捕获系统默认设备的媒体信息。捕获系统照相机:1.2.3

file类型<inputtype="file"accept="image/*"capture="camera">捕获系统摄像机:<inputtype="file"accept="video/*"capture="camcorder">1.2.3

file类型捕获系统录音机:<inputtype="file"accept="audio/*"capture="microphone">图4-6

multiple属性效果(3)multiple属性。multiple属性表示用户可以选择多个文件,在弹出的列表框中进行框选,我们可以上传多个图片文件,如图4-6所示。例如:<inputtype="file"multiple>1.2.3

file类型(4)files属性。files属性包括每个已选择的文件,如果没有指定multiple属性,则files属性中只有一个成员。例如:<inputtype="file"multiple>1.2.3

file类型当在文件域中选择了多个文件时,可以通过浏览器的调试工具进行分析,在“Elements”窗口中选中表单元素,通过表单元素的“Properties”属性窗口可以看到,files属性中包括可供选择的图片文件列表。一般而言,该属性被提供给JavaScript脚本语言调用,以获取上传的文件列表成员信息,如图4-7所示。图4-5

accept属性效果1.2表单元素4.radio类型<inputtype="radio">用于创建单选按钮。radio类型常用属性如表4-4所示。表4-4

radio类型常用属性属性描述checked设置或返回单选按钮的状态disabled设置或返回是否禁用单选按钮name设置或返回单选按钮的名称value设置或返回单选按钮的value属性值autofocus该属性指定加载时控件具有输入焦点1.2.4

radio类型如果需要创建一组单选按钮,则必须为每个表单成员添加一个相同的name属性值。例如:<inputtype="radio"name="gender">男

<inputtype="radio"name="gender">女图4-8

radio类型表单效果运行以上代码后,浏览器的显示效果如图4-8所示。1.2.4

radio类型如果我们希望在以上案例中通过单击描述文字也能达到单选按钮的选择效果,则可以使用label元素关联单选按钮。将一个label元素和一个input元素匹配在一起,此时需要给input元素一个id属性。而label元素需要一个for属性,其值和input元素的id属性一样。例如:<inputtype="radio"id="man"name="gender"><labelfor="man">男</label><inputtype="radio"id="woman"name="gender"><labelfor="woman">女</label>1.2表单元素

5.checkbox类型<inputtype="checkbox">用于创建复选框。它具有与radio类型相同的属性及属性值。如果需要创建一组复选框,则必须为每个表单成员添加一个相同的name属性值。例如:<h4>请选择您喜爱的水果:</h4><inputtype="checkbox"id="banana"name="fruit"><labelfor="banana">香蕉</label><inputtype="checkbox"id="apple"name="fruit"><labelfor="apple">苹果</label><inputtype="checkbox"id="pear"name="fruit"><labelfor="pear">梨子</label><inputtype="checkbox"id="peach"name="fruit"><labelfor="banana">桃子</label>1.2.5

checkbox类型运行以上代码后,浏览器的显示效果如图4-9所示。图4-9

checkbox类型表单效果1.2表单元素6.button类型<inputtype="button">用于创建一个没有默认值的可单击按钮。如果需要按钮出现文字标签,则可以指定value属性值。例如:<inputtype="button"value="按钮">运行以上代码后,浏览器的显示效果如图4-10所示。图4-10

button类型表单效果1.2.6

button类型在HTML5中,建议使用<button>标签创建按钮,以上代码可被更改为:<button>按钮</button>与button类型较为类似的还有submit、reset等类型。1.2表单元素

7.select元素select元素表示一个提供选项的下拉列表控件,例如:<formaction="login.php"method="get"target="_self"><labelfor="chooseFruit">选择您最喜欢的水果:</label><br><selectname="fruit"id="chooseFruit"><optionvalue="apple">苹果</option><optionvalue="banana">香蕉</option><optionvalue="pear">梨子</option><optionvalue="peach">桃子</option></select><inputtype="submit"></form>1.2.7

select元素运行以上代码后,浏览器的显示效果如图4-11所示。以上代码展示了select元素的使用方法。select元素可以通过id属性与label元素关联在一起。name属性表示提交到服务器的相关数据点的名字。每个选项由select元素中的一个option元素定义。每个option元素都应该有一个value属性,其中包含被选中时需要提交到服务器的数据值。如果不包含value属性,则value属性值默认为元素中的文本。用户可以在option元素中设置一个selected属性,以将其设置为页面加载完成时默认选中的元素。在上述例子中,我们选中了“梨子”选项,单击“提交”按钮,表单通过URL地址将数据值“pear”提交给了服务器。图4-11下拉列表控件效果1.2.7

select元素select元素有一些用于控制元素的特有属性,例如,multiple属性规定了能否同时选中多个选项,size属性规定了一次性显示多少个选项。如果下拉列表中的选项较多,那么我们可以通过optgroup元素进行分组。示例:<select><optgrouplabel="福建"><optionvalue="xm">厦门</option><optionvalue="fz">福州</option><optionvalue="ly">龙岩</option></optgroup><optgrouplabel="浙江"><optionvalue="hz">杭州</option><optionvalue="nb">宁波</option><optionvalue="wz">温州</option></optgroup></select>1.2.7

select元素运行以上代码后,浏览器的显示效果如图4-12所示。图4-12

optgroup元素分组效果1.2表单元素

8.datalist元素datalist元素包含了一组option元素,这组元素表示其他表单控件的可选值。例如:<h1>datalist元素学习</h1><inputtype="text"id="mybooks"list="books"><datalistid="books"><optionvalue="假如给我三天光明"></option><optionvalue="经济学讲义"></option></datalist>1.2.8

datalist元素运行以上代码后,浏览器的显示效果如图4-13所示。图4-13

datalist元素效果1.2表单元素9.details元素details元素可以创建一个挂件,仅在被切换成展开状态时,才会显示内含的信息。summary元素可为该部件提供概要或者标签。例如:<h1>details元素学习</h1><details><summary>点击查看details元素的概念</summary>details:用于描述文档或文档某个部分的细节。</details>1.2.9

details元素运行以上代码后,浏览器的显示效果如图4-14所示。图4-14

details元素效果1.3

CSS3选择器CSS3中新增了许多选择器,便于对页面元素进行筛选,下面我们一起来学习并认识它们。1.层级选择器(1)相邻兄弟选择器。相邻兄弟选择器可以选择紧接在一个元素后面的另一个元素,且要求二者有相同的父元素,使用符号“+”表示。例如:<style>.li1+.li2{font-weight:bolder;font-size:32px;}</style><ul><liclass="li1">列表项一</li><liclass="li2">列表项二</li><liclass="li3">列表项三</li><liclass="li4">列表项四</li></ul>1.3.1层级选择器运行以上代码后,浏览器的显示效果如图4-15所示。图4-15相邻兄弟选择器效果1.3.1层级选择器

注意,相邻兄弟选择器只能选择紧邻的“弟元素”,例如,以下两种写法都是无法完成标签选择的:<style>/*非紧邻元素*/.li1+.li3{font-weight:bolder;}/*非"弟元素"*/.li2+.li1{font-weight:bolder;}</style><ul><liclass="li1">列表项一</li><liclass="li2">列表项二</li><liclass="li3">列表项三</li><liclass="li4">列表项四</li></ul>1.3.1层级选择器(2)通用兄弟选择器。通用兄弟选择器的使用方式和相邻兄弟选择器的使用方式相似,不同的是,通用兄弟选择器所选择的元素位置无须紧邻,只须层级相同即可,使用符号“~”表示。1.3

CSS3选择器2.结构性伪类选择器结构性伪类选择器的公共特征是允许开发者根据文档结构来指定元素的样式。其具体的使用方法和描述如表4-5所示。表4-5结构性伪类选择器的使用方法和描述选择器描述first-child表示在一组兄弟元素中的第一个元素last-child表示其父元素的最后一个子元素nth-child(N)用于选取属于其父元素的第N个子元素,不论元素的类型nth-last-child(N)用于选取属于其父元素的倒数第N个子元素,不论元素的类型nth-of-type(N)匹配同类型中的第N个同级兄弟元素nth-last-of-type(N)匹配同类型中的倒数第N个同级兄弟元素first-of-type匹配其父元素特定类型的第一个子元素last-of-type匹配其父元素特定类型的最后一个子元素only-child匹配没有任何兄弟元素的元素only-of-type代表任意一个元素,这个元素没有其他相同类型的兄弟元素empty匹配没有子元素(包括文本元素)的元素1.3.2结构性伪类选择器以上选择器中的参数N还可以使用表达式“a*n+b”来替换,n=0,1,2,3……例如:“2*n+1”用于匹配位置为1、3、5、7……的元素。也可以使用关键字odd来替换此表达式。“2*n+0”用于匹配位置为2、4、6、8……的元素。也可以使用关键字even来替换此表达式。a和b都必须为整数,并且元素的第一个子元素索引为1,而不是像数组一样从0开始。在上述表达式中,a*n必须写在b的前面,不能写成b+a*n的形式。例如:<style>

li:nth-child(2*n+1){background:skyblue;}</style><ul><li>第一项目</li><li>第二项目</li><li>第三项目</li><li>第四项目</li><li>第五项目</li><li>第六项目</li></ul>1.3.2结构性伪类选择器运行以上代码后,浏览器的显示效果如图4-16所示。图4-16结构性伪类选择器效果1.3

CSS3选择器3.状态伪类选择器(1)enabled。enabled表示任何被启用的元素。如果一个元素能够被激活(如选择、单击等),或者能够获取焦点,则该元素是被启用的。元素也有一个禁用的状态,在被禁用时,元素不能被激活或获取焦点。例如:<style>

input:enabled{font-weight:bolder;font-style:italic;}</style><inputtype="text">1.3.3状态伪类选择器运行以上代码后,浏览器的显示效果如图4-17所示。图4-17

enabled状态伪类选择器效果1.3.3状态伪类选择器(2)disabled。disabled与上述的enabled含义相反,该状态伪类选择器表示任何被禁用的元素。(3)checked。checked状态伪类选择器用于指定当表单中的radio单选按钮或checkbox复选框处于选中状态时的样式,如图4-18所示。例如:<style>#apple:checked~p{font-weight:bolder;font-style:italic;}</style><inputtype="radio"name="c"id="apple">苹果<pid="fruit">你选中了水果</p>图4-18

checked状态伪类选择器效果1.3

CSS3选择器4.伪元素选择器伪元素是一个被附加至选择器末的关键词,允许用户修改被选择元素特定部分的样式。在HTML5中,伪类选择器用一个冒号来表示,而伪元素选择器则用两个冒号来表示。1.3.4伪元素选择器(1)before。before伪元素选择器用于创建一个元素,且该元素将成为已选中元素的第一个子元素。通常使用content属性为一个元素添加修饰性的内容。此元素默认为行内元素。例如:运行以上代码后,浏览器的显示效果如图4-19所示。<style>p::before{content:"♥";}</style><p>你</p><p>我</p><p>他</p>图4-19

before伪元素选择器效果1.3.4伪元素选择器(2)after。after伪元素选择器用于创建一个元素,且该元素将成为已选中元素的最后一个子元素。1.3

CSS3选择器5.属性选择器在CSS中,我们可以通过属性选择器来选中带有特定属性的元素。(1)[attribute]选择器。该选择器用于选取带有指定属性的元素。2.2.3伪类选择器例如:<style>[title]{font-weight:bolder;font-style:italic;}</style><p>不含[title]属性</p><ptitle="include">包含[title]属性</p>运行以上代码后,浏览器的显示效果如图4-20所示。图4-20

[attribute]选择器效果2.2.3伪类选择器(2)[attribute=value]选择器。该选择器用于选取带有指定属性和值的元素。例如:<style>a[href=""]{font-weight:bolder;font-style:italic;}</style><ahref="">百度</a><ahref="">新浪</a><ahref="">腾讯</a>2.2.3伪类选择器运行以上代码后,浏览器的显示效果如图4-21所示。图4-21

[attribute=value]选择器效果2.2.3伪类选择器(3)[attribute~=value]选择器。该选择器用于选取属性值中包含指定词汇的元素,如图4-22所示。例如:<style>p[class~="important"]{font-weight:bolder;font-style:italic;}</style><pclass="importantwarning">Thisisimportant</p><pclass="important">Thisisimportant</p><pclass="warning">Thisisnotimportant</p>图4-22

[attribute~=value]选择器效果2.2.3伪类选择器(4)[attribute|=value]选择器。该选择器用于选取带有以指定值开头的属性值的元素,且该值必须是整个单词。例如:<style>p[lang|="en"]{font-weight:bolder;font-style:italic;}</style><plang="en">en</p><plang="en-us">en-us</p><plang="cy-en">cy-en</p>图4-23

[attribute|=value]选择器效果运行以上代码后,浏览器的显示效果如图4-23所示。2.2.3伪类选择器(5)[attribute^=value]选择器。该选择器用于匹配属性值以指定值开头的每个元素。例如:<style>p[class^="important"]{font-weight:bolder;font-style:italic;}</style><pclass="importantwarning">Thisisimportant</p><pclass="important">Thisisimportant</p><pclass="warningimportant">Thisisnotimportant</p>2.2.3伪类选择器运行以上代码后,浏览器的显示效果如图4-24所示。图4-24

[attribute^=value]选择器效果2.2.3伪类选择器(6)[attribute$=value]选择器。该选择器用于匹配属性值以指定值结尾的每个元素。例如:<style>p[class$="important"]{font-weight:bolder;font-style:italic;}</style><pclass="importantwarning">Thisisimportant</p><pclass="important">Thisisimportant</p><pclass="warningimportant">Thisisnotimportant</p>2.2.3伪类选择器运行以上代码后,浏览器的显示效果如图4-25所示。图4-25

[attribute$=value]选择器效果2.2.3伪类选择器(7)[attribute*=value]选择器。该选择器用于匹配属性值中包含指定值的每个元素。例如:<style>p[class*="bo"]{font-weight:bolder;font-style:italic;}</style><pclass="box">box</p><pclass="ball">ball</p><pclass="about">about</p>图4-26

[attribute*=value]选择器效果运行以上代码后,浏览器的显示效果如图4-26所示。“加入我们”页面的布局与样式美化任务1任务实施在本任务中,我们将通过表单元素和更为复杂的标签选择器,完成“加入我们”页面的设计,页面效果如图4-27所示。图4-27“加入我们”页面效果任务实施(1)在html文件夹中新建joinUs.html文件,用于设计“加入我们”页面。(2)在joinUs.html文件中输入“html:5”,完成基础结构搭建,修改网页标题为“加入我们”,并引入joinUs.css文件。<title>加入我们</title><linkrel="stylesheet"href="../css/joinUs.css">(3)在img文件夹中放置joinUs.png图片文件,并通过<img>标签将其引入页面中。<img

src="../img/joinUs.png"width="100%">任务实施<formaction="join.php"method="post"><tableclass="joinUsTable"align="center"cellspacing="0"cellpadding="8"><thead></thead><tbody></tbody><tfoot></tfoot></table></form>(5)为<table>表格元素赋予类名“joinUsTable”,并设置表格居中对齐,单元格间距为0px,表格单元格边界与单元格内容之间的间距为8px。注意:HTML5中不再支持align、cellspacing和cellpadding属性。在后续任务中,我们将使用CSS对其进行替换。任务实施(6)在joinUs.css文件中设定“joinUsTable”样式规则,美化表格样式。.joinUsTable{width:800px;border:1pxsolid#dddddd;/*后续使用margin:auto用来代替align="center"属性,使表格水平居中;*/}任务实施(7)将表格划分为13行、2列的格式,并对表头、表格体和表尾的首尾行进行跨列合并。在表格中补充信息内容,其中带“*”号的为必填项,可以使用<sup>标签进行设置,如图4-28所示。任务实施(8)根据图4-28,设置表头、单元格和<sup>标签的样式,可以通过后代选择器快速选取标签元素。.joinUsTable

th{height:20px;background:#f0f0f0;font-weight:normal;text-align:left;}.joinUsTabletd{height:46px;color:#363636;}.joinUsTablesup{color:red;}任务实施(9)观察图4-28可知,表格体的首行内容居左对齐,末行内容居中对齐,中间部分的第一列文本内容居右对齐,第二列表单元素居左对齐。可以通过结构选择器进行对应的样式设置。.joinUsTabletbodytrtd:first-child{width:140px;text-align:right;}.joinUsTabletbodytr:first-childtd{color:#f57359;font-size:18px;text-align:left;}.joinUsTabletbodytr:last-childtd{text-align:center;}任务实施(10)在表格的前3列表单中,我们需要填写真实姓名、手机号码和常用邮箱信息,并且这3项为必填项,每一项中均有描述说明,可以按照如下代码进行设置,效果如图4-29所示。图4-29表格前3列表单效果任务实施<tr><td>真实姓名<sup>*</sup>:</td><td><inputtype="text"placeholder="请填写您的姓名"name="name"required="required"></td></tr><tr><td>手机号码<sup>*</sup>:</td><td><inputtype="tel"placeholder="请填写您的手机号码"name="tel"required="required"></td></tr><tr><td>常用邮箱<sup>*</sup>:</td><td><inputtype="email"placeholder="请填写您的常用邮"name="email"required="required"></td></tr>注意:建议input元素都添加name属性,便于未来与服务端之间的数据交互。任务实施.joinUsTableinput[type="text"],.joinUsTableinput[type="tel"],.joinUsTableinput[type="email"]{width:530px;height:30px;border:1pxsolid#cbcbcb;}.joinUsTable

input:focus{outline:none;border:1pxsolid#f57359;}(11)在样式表中为前3列表单设置样式,使其宽度为530px,高度为30px,采用宽度为1px的浅灰色实线边框。当文本框具有焦点时,呈现出宽度为1px的橘色实线边框。对于多个表单元素的选取,我们可以通过并集选择器实现。任务实施此处需要注意border和outline的区别。

border:元素的边框。

outline:当使用鼠标单击或者使用Tab键让表单元素获得焦点时,该表单元素将会被一个轮廓线框围绕。这个轮廓线框就是outline。任务实施(12)“面试岗位”表单是一个下拉列表,存在多个选项。可以按照如下代码进行设置,效果如图4-30所示。图4-30“面试岗位”表单效果任务实施<tr><td>面试岗位<sup>*</sup>:</td><td><inputtype="text"list="jobs"name="jobs"required="required"><datalistid="jobs"><optionvalue="Java工程师"></option><optionvalue="PHP工程师"></option><optionvalue="前端工程师"></option><optionvalue="C/C++工程师"></option><optionvalue="UI设计师"></option></datalist></td></tr>任务实施(13)下面进行“性别”表单的设计,这部分的重点在于切换不同的选项标签,用户头像能够随之切换,效果如图4-31所示。图4-31“性别”表单效果任务实施<tr><td>性别:</td><td><inputtype="radio"id="man"name="gender"checked><labelfor="man">男</label><inputtype="radio"id="woman"name="gender"><labelfor="woman">女</label><imgwidth="40"src=""></td></tr>由图4-31可知,“性别”表单中的单选按钮通过<inputtype="radio">设计而成。为了实现其单选效果,我们需要为其添加属性值相同的name属性。同时使用<label>标签关联input元素,以便用户通过文字进行性别选取。任务实施#man:checked~img{content:url(../img/man.png);}#woman:checked~img{content:url(../img/woman.png);}如何通过<inputtype="radio">进行用户头像切换呢?关键在于使用:checked状态伪类选择器和通用兄弟选择器。我们可以通过上述选择器对选中的input元素后的img元素进行背景内容的更换设置。content属性可用于设置多媒体元素(图像、声音、视频等)的超链接地址。任务实施<tr><td>工作年限:</td><td><selectname="exp"><optionvalue="fresh">应届生</option><optionvalue="1to3">1-3年</option><optionvalue="3to5">3-5年</option><optionvalue="5to8">5-8年</option><optionvalue="8to10">8-10年</option><optionvalue="10more">10年以上</option></select></td></tr>(14)“工作年限”表单是一个下拉列表。可以按照如下代码进行设置,对列表选项使用option元素,并注意设置其value属性值,便于未来与服务端进行数据交互,效果如图4-32所示。图4-32“工作年限”表单效果任务实施(15)通过CSS样式,设置select元素边框为宽度为1px的浅灰色实线。.joinUsTableselect{border:1pxsolid#cbcbcb;}任务实施<tr><td>作品上传:</td><td><inputtype="file"name="files"multiple></td></tr>(16)“作品上传”表单可以通过file类型的input元素进行设置,并为其指定multiple属性,允许上传多个文件,如图4-33所示。图4-33“作品上传”表单效果任务实施(17)“常用编程语言”表单是一组复选框,可以通过checkbox类型的input元素进行设置,并使用<label><标签>关联input元素,以便用户通过文字进行常用编程语言的选取,如图4-34所示。图4-34“常用编程语言”表单效果任务实施<tr><td>常用编程语言:</td><td><labelfor="Java"><inputid="java"value="java"type="checkbox">Java</label><labelfor="PHP"><inputid="php"value="php"type="checkbox">PHP</label><labelfor="JS"><inputid="js"value="js"type="checkbox">JavaScript</label><labelfor="c"><inputid="c"value="c"type="checkbox">C</label><labelfor="c++"><inputid="c++"value="c++"type="checkbox">C++</label><labelfor="others"><inputid="others"value="others"type="checkbox">其他

</label></td></tr>任务实施<tr><td>个人评价<sup>*</sup>:</td><td><textareacols="71"rows="8"name="evaluation"></textarea></td></tr>(18)“个人评价”表单是一个多行文本域,可以通过textarea元素进行设置,并使用row属性规定显示行数,使用col属性规定多行文本域可见宽度,如图4-35所示。图4-35“个人评价”表单效果任务实施.joinUsTable

input:focus,.joinUsTable

textarea:focus{outline:none;border:1pxsolid#f57359;}.joinUsTabletextarea{resize:none;border:1pxsolid#cbcbcb;}(19)通过CSS样式表禁用多行文本域的拖动缩放功能,并设置其具有焦点时的样式。因为其拥有焦点时的样式和单行文本域是相同的,所以我们可以通过并集选择器进行多个元素的样式声明,而不必重复设置样式。任务实施<tr><tdcolspan="2"><inputtype="submit"value="确认提交"><inputtype="reset"value="重新填写"></td></tr>(20)表单的提交和重置按钮可以通过submit类型和reset类型的input元素进行设置,并且可以通过并集选择器和:hover伪类选择器设置按钮默认状态和交互状态时的样式,效果如图4-36所示。joinUs.html文件:任务实施input[type="submit"],input[type="reset"]{background:#f57359;outline:none;border:none;color:white;width:100px;height:38px;}input[type=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论