├── .gitignore ├── 01_HelloHTML ├── img │ └── 1-1.png ├── index.html └── readme.md ├── 02_Element ├── index.html └── readme.md ├── 03_Text ├── index.html └── readme.md ├── 04_List ├── index.html └── readme.md ├── 05_Form ├── index.html └── readme.md ├── 06_Hyperlink ├── index.html └── readme.md ├── 07_Img └── readme.md ├── 08_SemanticElements ├── img │ ├── 8-1.png │ └── 8-2.png └── readme.md ├── 09_HTML5 └── readme.md ├── 10_Responsive └── readme.md ├── 11_JavaScript └── readme.md ├── 12_CSS └── readme.md ├── 13_UniswapHTML ├── Uniswap.html ├── img │ ├── 9-1.jpg │ ├── 9-2.jpg │ ├── 9-3.jpg │ ├── 9-4.jpg │ ├── 9-5.jpg │ ├── 9-6.png │ ├── arrow.png │ ├── ethereum.png │ ├── icon.png │ └── setup.png └── readme.md ├── 14_BAYCHTML ├── BAYC.html ├── img │ ├── 10-1.png │ ├── 10-10.png │ ├── 10-11.png │ ├── 10-2.jpg │ ├── 10-3.png │ ├── 10-4.png │ ├── 10-5.png │ ├── 10-6.png │ ├── bayc-footer.webp │ ├── bayc-logo.webp │ ├── discord.png │ ├── icon.png │ ├── instagram.png │ ├── twitter.png │ └── youtube.png └── readme.md ├── LICENSE.md ├── README.md └── languages └── en ├── 01_HelloHTML ├── img │ └── 1-1.png ├── index.html └── readme.md ├── 02_Elements ├── index.html └── readme.md ├── 03_Text ├── index.html └── readme.md ├── 04_List ├── index.html └── readme.md ├── 05_Form ├── index.html └── readme.md ├── 06_Hyperlink ├── index.html └── readme.md ├── 07_Img └── readme.md ├── 08_SemanticElements ├── img │ ├── 8-1.png │ └── 8-2.png └── readme.md ├── 09_HTML5 └── readme.md ├── 10_Responsive └── readme.md ├── 11_Javascript └── readme.md ├── 12_CSS └── readme.md ├── 13_UniswapHTML ├── Uniswap.html ├── img │ ├── 9-1.png │ ├── 9-2.png │ ├── 9-3.jpg │ ├── 9-4.jpg │ ├── 9-5.jpg │ ├── 9-6.png │ ├── arrow.png │ ├── ethereum.png │ ├── icon.png │ └── setup.png └── readme.md ├── 14_BAYCHTML ├── BAYC.html ├── img │ ├── 10-1.png │ ├── 10-10.png │ ├── 10-11.png │ ├── 10-2.jpg │ ├── 10-3.png │ ├── 10-4.png │ ├── 10-5.png │ ├── 10-6.png │ ├── bayc-footer.webp │ ├── bayc-logo (1).webp │ ├── bayc-logo.webp │ ├── discord.png │ ├── icon.png │ ├── instagram.png │ ├── twitter.png │ └── youtube.png └── readme.md └── readme.md /.gitignore: -------------------------------------------------------------------------------- 1 | **.DS_Store 2 | .DS_Store 3 | node_modules 4 | cache 5 | typechain-types 6 | artifacts 7 | .idea 8 | .history 9 | **node_modules** 10 | **cache** 11 | **artifacts** -------------------------------------------------------------------------------- /01_HelloHTML/img/1-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/WTFAcademy/WTF-HTML/20d8015e5ae888ea223f603964e623612cc3bfa8/01_HelloHTML/img/1-1.png -------------------------------------------------------------------------------- /01_HelloHTML/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | This is the head 5 | 6 | 7 |

Hello HTML.

8 | 9 | 10 | -------------------------------------------------------------------------------- /01_HelloHTML/readme.md: -------------------------------------------------------------------------------- 1 | # WTF HTML极简教程: 1. Hello HTML (9行代码) 2 | 3 | WTF HTML教程,帮助新人快速入门HTML。 4 | 5 | **推特**:[@WTFAcademy_](https://twitter.com/WTFAcademy_) | [@0xAA_Science](https://twitter.com/0xAA_Science) 6 | 7 | **WTF Academy社群:** [官网 wtf.academy](https://wtf.academy) | [WTF Solidity教程](https://github.com/AmazingAng/WTFSolidity) | [discord](https://discord.gg/5akcruXrsk) | [微信群申请](https://docs.google.com/forms/d/e/1FAIpQLSe4KGT8Sh6sJ7hedQRuIYirOoZK_85miz3dw7vA1-YjodgJ-A/viewform?usp=sf_link) 8 | 9 | 所有代码和教程开源在github: [github.com/WTFAcademy/WTF-HTML](https://github.com/WTFAcademy/WTF-HTML) 10 | 11 | --- 12 | 13 | 这一讲,我们介绍HTML基础,并写第一个HTML程序:Hello HTML(9行代码)。你也可以直接阅读[MDN HTML基础](https://developer.mozilla.org/zh-CN/docs/Learn/Getting_started_with_the_web/HTML_basics)。 14 | 15 | 16 | ## 什么是 HTML ? 17 | 18 | 网络,或更具体的说,万维网(World Wide Web)是由很多链接在一起的文档和资源构成的。这些文档和资源是用HTML(**H**yper**t**ext **M**arkup **L**anguage,超文本标记语言)编写的,它们被称为网页。HTML是网页的基础,定义了网页的结构和内容。 19 | 20 | 当你在浏览器中输入一个网址(例如,www.example.com)时,浏览器会发送一个请求到提供该网页的服务器。服务器会响应这个请求,并将请求的网页(也就是一些HTML)发送回浏览器。然后,浏览器会解析这些HTML,并将它们显示为你通常看到的网页。 21 | 22 | HTML 不是一门编程语言,而是一种用于定义内容结构的*标记语言*。HTML 由一系列的**元素**(`element`)组成,这些元素可以用来包围不同部分的内容,使其以某种方式呈现或者工作。一对标签(`tag`)可以为一段文字或者一张图片添加超链接,将文字设置为斜体,改变字号,等等。例如下面内容: 23 | 24 | ```plain 25 | My cat is very grumpy 26 | ``` 27 | 28 | 可以将这行文字封装成一个段落(**p**aragraph)元素来使其在单独一行呈现: 29 | 30 | ```html 31 |

My cat is very grumpy

32 | ``` 33 | 34 | ## HTML、CSS和JavaScript的区别 35 | 36 | - **HTML**:HTML是用来定义网页的结构和内容的。它由一系列的元素组成,元素可以包含文本、链接、图片等。 37 | 38 | - **CSS**:CSS(Cascading Style Sheets,级联样式表)是一种样式表语言,用于描述HTML元素的样式,包括颜色、布局和字体等。CSS可以使你的网页看起来更漂亮,也可以实现响应式设计,使你的网页在不同的设备上看起来都很好。 39 | 40 | - **JavaScript**:JavaScript是一种编程语言,可以使网页具有交互性。例如,JavaScript可以使网页对用户的行为做出反应,如点击按钮、提交表单等。 41 | 42 | ## HTML 元素 43 | 44 | HTML文档由HTML元素组成。HTML元素由标签、内容和结束标签组成。例如,一个段落元素如下所示: 45 | 46 | ```html 47 |

This is a paragraph.

48 | ``` 49 | 50 | 浏览器中效果: 51 | 52 |

This is a paragraph.

53 | 54 | 55 | 在这个例子中,`

`是开始标签,`This is a paragraph.`是内容,`

`是结束标签。 56 | 57 | HTML元素可以有属性,属性提供了元素的额外信息,例如,一个链接元素如下所示: 58 | 59 | ```html 60 | This is a link 61 | ``` 62 | 63 | 浏览器中效果: 64 | 65 | This is a link 66 | 67 | 在这个例子中,`href`是一个属性,它指定了链接的目标地址。 68 | 69 | ## 开发工具 70 | 71 | 我们建议大家使用 [VSCode](https://code.visualstudio.com/download) 开发 HTML,并用浏览器(Chrome)打开`.html`文件进行浏览。 72 | 73 | ## Hello HTML 74 | 75 | 现在我们要写第一个 HTML 程序:Hello HTML(9行代码),看看单个元素如何彼此协同构成一个完整的 HTML 页面。 76 | 77 | ```html 78 | 79 | 80 | 81 | This is the head 82 | 83 | 84 |

Hello HTML.

85 | 86 | 87 | ``` 88 | 89 | ![Hello HTML](./img/1-1.png) 90 | 91 | Hello HTML中包括以下元素: 92 | 93 | - `` — 文档类型,保证文档正常读取。。 94 | - `` — `html` 元素,包含整个页面的内容,也称作根元素。 95 | - `` — `head` 元素,它的内容对用户不可见,其中包含例如面向搜索引擎的搜索关键字(keyword)、页面描述、CSS 样式表和字符编码声明等。 96 | - `` — `title` 元素。该元素设置页面的标题,显示在浏览器标签页上,也作为收藏网页的描述文字。 97 | - `` — `body` 元素。该元素包含期望让用户在访问页面时看到的内容,包括文本、图像、视频、游戏、可播放的音轨或其他内容。 98 | - `

` - 段落元素,表示文本的一个段落,通常表现为一整块与相邻文本分离的文本,或以垂直的空白隔离或以首行缩进。 99 | 100 | ## 总结 101 | 102 | 这一讲我们介绍了什么是HTML,HTML的元素和开发工具,并且写了第一个HTML程序:Hello HTML。 -------------------------------------------------------------------------------- /02_Element/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | Element 4 | 5 | 6 |

My cat is very grumpy.

7 |

My cat is very grumpy.

8 | My test image 9 |
我是div
10 |
我也是div
11 | 我是span 12 | 我也是span 13 | 14 | 15 | -------------------------------------------------------------------------------- /02_Element/readme.md: -------------------------------------------------------------------------------- 1 | # WTF HTML极简教程: 2. Element 2 | 3 | WTF HTML教程,帮助新人快速入门HTML。 4 | 5 | **推特**:[@WTFAcademy_](https://twitter.com/WTFAcademy_) | [@0xAA_Science](https://twitter.com/0xAA_Science) 6 | 7 | **WTF Academy社群:** [官网 wtf.academy](https://wtf.academy) | [WTF Solidity教程](https://github.com/AmazingAng/WTFSolidity) | [discord](https://discord.gg/5akcruXrsk) | [微信群申请](https://docs.google.com/forms/d/e/1FAIpQLSe4KGT8Sh6sJ7hedQRuIYirOoZK_85miz3dw7vA1-YjodgJ-A/viewform?usp=sf_link) 8 | 9 | 所有代码和教程开源在github: [github.com/WTFAcademy/WTF-HTML](https://github.com/WTFAcademy/WTF-HTML) 10 | 11 | --- 12 | 13 | 在我们了解了HTML的基础概念后,我们将深入讨论HTML的元素。 14 | 15 | 16 | ## 元素的属性 17 | 18 | HTML 元素可以拥有属性(Attribute),它们提供了有关元素的更多信息,或者定义了元素的某些行为。属性总是在开始标签中定义,常常使用 "属性名=属性值" 的形式出现。例如,链接(`a`)元素可以使用 `href` 属性指定链接的目标地址: 19 | 20 | ```html 21 | Visit our website 22 | ``` 23 | 24 | 浏览器中效果: 25 | 26 | Visit our website 27 | 28 | 29 | 在上述代码中,`a` 元素的 `href` 属性的值为 `"https://www.example.com"`,这意味着当点击该链接时,浏览器将导航到该 URL。 30 | 31 | 属性应该包含: 32 | 33 | 1. 在属性与元素名称(或上一个属性,如果有超过一个属性的话)之间的空格符。 34 | 2. 属性的名称,并接上一个等号。 35 | 3. 由引号所包围的属性值。 36 | 37 | 常用的属性: 38 | 39 | 1. `id`:为元素提供一个唯一标识符。 40 | 2. `class`:为元素提供一个或多个类名,不同的元素可以添加相同的类名。 41 | 3. `style`:为元素提供内联样式。 42 | 43 | 44 | ## 嵌套元素 45 | 46 | HTML 元素可以嵌套在其他元素中。这意味着你可以在一个元素内部放置另一个或多个元素,以创建更复杂的内容结构。例如,你可能会在一个段落元素内部包含一个或多个链接元素: 47 | 48 | ```html 49 |

My cat is very grumpy.

50 | ``` 51 | 浏览器中效果: 52 | 53 |

My cat is very grumpy.

54 | 55 | 必须保证元素嵌套次序正确:本例首先使用`

`标签,然后是``标签,因此要先结束``标签,最后再结束`

`标签。这样是不对的: 56 | 57 | ```html 58 |

My cat is very grumpy.

59 | ``` 60 | 61 | 浏览器中效果: 62 | 63 |

My cat is very grumpy.

64 | 65 | 因此元素必须正确地开始和结束,才能清楚地显示出正确的嵌套层次。否则浏览器就得自己猜测,虽然它会竭尽全力,但很大程度不会给你期望的结果。所以一定要避免! 66 | 67 | ## 空元素 68 | 69 | HTML 中有一些元素没有内容,也不需要结束标签,这些被称为空元素(Empty Elements)。比如 `
` 标签插入一个换行,`` 标签用来插入图片。 70 | 71 | ```html 72 |
73 | My Image 74 | ``` 75 | 76 | ## 块级元素 77 | 78 | 块级元素(Block-level Elements)在页面中以块的形式显示,常常用作结构元素。常见的块级元素有:`
`、`

`、`

`-`

` 和 `