--- id: bd7158d8c442eddfaeb5bd18 title: 制作一个致敬页 challengeType: 3 forumTopicId: 301147 dashedName: build-a-tribute-page --- # --description-- **目标:**在 [CodePen.io](https://codepen.io) 上创建一个与这个功能类似的 app:。 在满足以下[需求](https://en.wikipedia.org/wiki/User_story)并能通过所有测试的前提下,你可以根据自己的喜好来美化你的 app。 你可以使用 HTML、JavaScript 以及 CSS 来完成项目。由于目前你只学到了 CSS 课程,所以我们建议你只使用 CSS 来完成这个项目,同时巩固一下你之前所学的内容。你也可以使用 Bootstrap 或者 SASS。我们不推荐你在这个项目中使用其他技术(比如 jQuery、React、Angular 或 Vue)。否则,如果在编码中出现问题,你需要自行解决。在后续的其他项目中,你将有机会使用像是 React 等其他技术栈。如果你在使用上述推荐的技术栈过程中遇到问题,请提交给我们来处理。祝你编码愉快! **需求 1:**此 app 中应存在一个 `id` 为 `"main"` 的元素,页面上的所有元素都应置于这个元素中。 **需求 2:**此 app 中应存在一个 `id` 为 `"title"` 的元素,其中包含描述致敬页主题的字符串文本,如 "Dr. Norman Borlaug"。 **需求 3:**此 app 中应存在一个 `id` 为 `"img-div"` 的 `div` 元素。 **需求 4:**在 `img-div` 元素内,应存在一个 `id` 为 `"image"` 的 `img` 元素。 **需求 5:**在 `img-div` 元素内,应存在一个相应的 `id` 为 `"img-caption"` 的元素,其中包含对 `img-div` 中图像的描述文本。 **需求 6:**此 app 中应存在一个 `id` 为 `"tribute-info"` 的元素,其中应包含描述致敬页主题的内容文本。 **需求 7:**此 app 中应存在一个 `id` 为 `"tribute-link"` 的 `a` 元素,它应链接到一个包含有关致敬页主题额外信息的外部网页。提示:你必须为 `a` 元素提供 `target` 属性,并将其属性值设置为 `_blank`(即 `target="_blank"`),这样才可以在新选项卡中打开链接。 **需求 8:**`img` 元素应相对于其父元素的宽度自动调整大小,但不超过图片的原始大小。 **需求 9:**`img` 应在其父元素内居中。 你可以通过 fork [这个项目](http://codepen.io/freeCodeCamp/pen/MJjpwO)来构建你的项目,也可以使用此 CDN 链接在任何你喜欢的环境中运行测试:`https://cdn.freecodecamp.org/testable-projects-fcc/v1/bundle.js`。 完成项目并通过所有测试后,请输入你的项目在 CodePen 上的链接并提交。 # --solutions-- ```html // solution required ```