56 lines
2.9 KiB
Markdown
Raw Normal View History

---
id: 587d78af367417b2b2512b04
title: 制作一个产品登录页
challengeType: 3
forumTopicId: 301144
dashedName: build-a-product-landing-page
---
# --description--
**目标:**在 [CodePen.io](https://codepen.io) 上创建一个与这个功能类似的 app<https://codepen.io/freeCodeCamp/full/RKRbwL>
在满足以下[需求](https://en.wikipedia.org/wiki/User_story)并能通过所有测试的前提下,你可以根据自己的喜好来美化你的 app。
你可以使用 HTML、JavaScript 以及 CSS 来完成项目。由于目前你只学到了 CSS 课程,所以我们建议你只使用 CSS 来完成这个项目,同时巩固一下你之前所学的内容。你也可以使用 Bootstrap 或者 SASS。我们不推荐你在这个项目中使用其他技术比如 jQuery、React、Angular 或 Vue。否则如果在编码中出现问题你需要自行解决。在后续的其他项目中你将有机会使用像是 React 等其他技术栈。如果你在使用上述推荐的技术栈过程中遇到问题,请提交给我们来处理。祝你编码愉快!
**需求 1**产品登陆页应存在 `id``"header"``header` 元素。
**需求 2**在 `header` 元素内应存在 `id``"header-img"` 的图像,这里通常用来放置公司的 logo。
**需求 3**在 `#header` 元素内,应存在一个 `id``"nav-bar"``nav` 元素。
**需求 4**`nav` 元素中应至少包含三个 `class``nav-link` 且可点击的元素。
**需求 5**当点击 `nav` 内的 `.nav-link` 按钮时,应滚动到产品主页上相应的部分。
**需求 6**页面上应存在 `id``"video"` 的嵌入式视频播放区域。
**需求 7**产品登陆页应存在一个 `id``"form"``form` 元素。
**需求 8**在表单元素 `form` 中,应存在一个 `id``"email"``input` 输入框供用户填写邮箱。
**需求 9**`#email` 输入框内应存在描述该区域用途的占位符文字(`placeholder`)。
**需求 10**`#email` 输入框应使用 HTML5 验证来确认输入的内容是否为邮箱。
**需求 11**在表单中,应存在一个 `id``"submit"``input` 提交按钮。
**需求 12**当点击 `#submit` 元素时,应将邮箱信息提交到一个静态页面(请使用这个模拟的 URL<https://www.freecodecamp.com/email-submit>)。
**需求 13**navbar 应保持在视口viewport的顶部。
**需求 14**在此 app 中,应至少使用一次媒体查询。
**需求 15**在此 app 中,应至少使用一次 CSS 的 flexbox 布局。
你可以通过 fork [这个项目](http://codepen.io/freeCodeCamp/pen/MJjpwO)来构建你的项目,也可以使用此 CDN 链接在任何你喜欢的环境中运行测试:`https://cdn.freecodecamp.org/testable-projects-fcc/v1/bundle.js`
完成项目并通过所有测试后,请输入你的项目在 CodePen 上的链接并提交。
# --solutions--
```html
// solution required
```