3.3 KiB
id, title, challengeType, forumTopicId, dashedName
id | title | challengeType | forumTopicId | dashedName |
---|---|---|---|---|
587d78af367417b2b2512b03 | 制作一个调查表格 | 3 | 301145 | build-a-survey-form |
--description--
**目标:**在 CodePen.io 上创建一个与这个功能类似的 app:https://codepen.io/freeCodeCamp/full/VPaoNP。
在满足以下 需求 并能通过所有测试的前提下, 你可以根据自己的喜好来美化你的 app。
你可以使用 HTML、JavaScript 以及 CSS 来完成项目。 由于目前你只学到了 CSS 课程,所以我们建议你只使用 CSS 来完成这个项目,同时巩固一下你之前所学的内容。 你也可以使用 Bootstrap 或者 SASS。 我们不推荐你在这个项目中使用其他技术(比如 jQuery、React、Angular 或 Vue)。 在后续的其他项目中,你将有机会使用像是 React 等其他技术栈。 我们会接受并尝试修复你在使用推荐技术栈创建项目时报告的问题。 祝你编码愉快!
**需求 1:**此 app 中应存在一个 id="title"
的大小为 H1 的标题。
**需求 2:**此 app 中应存在一段 id="description"
的大小为 P 的短小的描述。
**需求 3:**此 app 中应存在一个 id="survey-form"
的 form
元素。
**需求 4:**在表单元素内,应存在 id="name"
的输入框(必填项),以便用户输入姓名。
**需求 5:**在表单元素内,应存在 id="email"
的输入框(必填项),以便用户输入邮箱。
**需求 6:**如果用户输入了格式不正确的邮箱,则应出现来自 HTML5 表单数据校验的错误信息。
**需求 7:**在表单内,用户应可以在 id="number"
的输入框中输入数字。
**需求 8:**如果用户在数字输入框内输入非数字内容,则应出现来自 HTML5 表单数据校验的错误信息。
**需求 9:**如果用户输入的数字超出了使用 min
和 max
属性定义的范围,则应出现来自 HTML5 表单数据校验的错误信息。
**需求 10:**表单中的姓名、邮箱和数字输入框需有对应的包含描述输入框用途的标签。这些标签的 id 应分别为 id="name-label"
、id="email-label"
和 id="number-label"
。
**需求 11:**表单中的姓名、邮箱和数字输入框需有对应的描述文字作为占位符。
**需求 12:**在表单元素内,应存在一个 id="dropdown"
的下拉列表,用户可以从中选取一个选项。
**需求 13:**在表单元素内,应至少存在一组单选按钮,用户可以从中选取一个选项。 每组应使用 name
属性进行分组。
**需求 14:**在表单元素内,应存在几个复选框,且每个复选框都应有 value
属性。
**需求 15:**在表单元素的最后,应存在一个 textarea
元素,以便用户输入额外的批注。
**需求 16:**在表单元素内,应存在一个 id="submit"
的按钮,以便用户提交表单。
你可以 fork 这个 CodePen 项目来创建你的项目。 也可以使用此 CDN 链接在任何你喜欢的环境中运行测试:https://cdn.freecodecamp.org/testable-projects-fcc/v1/bundle.js
。
完成项目并通过所有测试后,请输入你的项目在 CodePen 上的链接并提交。
--solutions--
// solution required