1 HTML简介

1.1 解释

HTML是用来描述网页的一种语言。

  • HTML即超文本标记语言(Hyper Text Markup Language);
  • HTML不是一种编程语言,而是一种标记语言(markup language);
  • 标记语言是一套标记标签(markup tag);
  • HTML使用标记标签来描述网页。

1.2 标签

HTML标记标签通常被称为HTML标签(HTML tag)。

  • HTML标签是由尖括号包围的关键词,比如<html>;
  • HTML标签通常是成对出现的,比如<b>和</b>;
  • 标签对中的第一个标签是开始标签,第二个标签是结束标签;
  • 开始和结束标签也被称为开放标签和闭合标签。

1.3 文档

HTML文档=网页。Web浏览器的作用是读取HTML文档,并以网页的形式显示出它们。浏览器不会显示HTML标签,而是使用标签来解释页面的内容。

  • HTML文档描述网页;
  • HTML文档包含HTML标签和纯文本;
  • HTML文档也被称为网页。

代码编辑器

代码编辑器主要分两种:IDE(集成开发环境)和轻量编辑器。

2.1 IDE

  IDE是用于管理整个项目具有强大功能的编辑器。顾名思义,它不仅仅是一个编辑器,而且还是个完整的开发环境。

  IDE 加载项目(通常包含很多文件),并且允许在不同文件之间切换。IDE 还提供基于整个项目(不仅仅是打开的文件)的自动补全功能,集成版本控制(如git)、集成测试环境等一些其他“项目层面”的东西。

2.1.1 WebStorm

  WebStorm是jetbrains公司旗下一款JavaScript开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

2.1.2 HBuilder

  HBuilder是DCloud(数字天堂)推出的一款支持HTML5的Web开发IDE,它的编写用到了Java、C、Web和Ruby,本身主体是由Java编写。

它基于Eclipse,所以顺其自然地兼容了Eclipse的插件。

2.2 轻量编辑器

  轻量编辑器没有IDE功能那么强大,但是他们一般很快、优雅而且简单,主要用于立即打开编辑一个文件。

  与IDE最大的区别:IDE一般在项目中使用,这也就意味着在开启的时候要加载很多数据,如果需要的话,在使用的过程中还会分析项目的结构等。如果我们只需要编辑一个文件,那么轻量编辑器会更快。

  实际上,轻量编辑器一般都有各种各样的插件,这些插件可以做目录级(directory-level)的语法分析和补全代码。所以轻量编辑器和IDE也没有严格的界限。

2.2.1 Visual Studio Code

  Microsoft在2015年Build开发者大会上正式宣布了Visual Studio Code 项目:一个运行于Mac OS X、Windows和Linux之上的,针对于编写现代Web和云应用的跨平台源代码编辑器。

2.2.2 Sublime Text

  Sublime Text是一个代码编辑器,也是HTML和散文先进的文本编辑器,它最初被设计为一个具有丰富扩展功能的Vim。

  Sublime Text是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

3. 浏览器内核

浏览器内核:渲染引擎、JS引擎。

  渲染引擎:负责取得网页的内容(HTML、XML、图像等等),整理讯息(例如加入CSS等),以及计算网页的显示方式,然后输出至显示器或打印机。

  JS引擎:解析Javascript语言,执行JavaScript语言来实现网页的动态效果。

4. HTML标签语义化

标签语义化:标签的含义。即一眼看去,就知道哪个是重点,结构是什么,知道每块的内容是干撒的。

遵循的原则:先确定语义的HTML,再选合适的CSS。核心:合适的地方给一个最为合理的标签。

为什么要有语义化标签:

  1、方便代码的阅读和维护

  2、同时让浏览器或是网络爬虫可以很好地解析,从而更好分析其中的内容

  3、使用语义化标签会具有更好地搜索引擎优化

5. HTML属性

属性为 HTML 元素提供附加信息。HTML 标签可以拥有属性,属性提供了有关HTML元素的更多信息。

属性:以名称/值对的形式出现,比如:name="value"。属性总是在 HTML 元素的开始标签中规定。

  1、使用小写属性:属性和属性值对大小写不敏感。不过,万维网联盟在其 HTML 4 推荐标准中推荐小写的属性/属性值,而新版本的 (X)HTML 要求使用小写属性。

  2、始终为属性值加引号:属性值应该始终被包括在引号内。双引号是最常用的,不过使用单引号也没有问题。在某些个别的情况下,比如属性值本身就含有双引号,那么您必须使用单引号。

  3、HTML 属性参考手册

属性

描述

class

classname

规定元素的类名(classname)

id

id

规定元素的唯一 id

style

style_definition

规定元素的行内样式(inline style)

title

text

规定元素的额外信息(可在工具提示中显示)

6. HTML生成一个页面

需求1:如下页面,使用工具visual studio code编写一张HTML页面。内容主要涉及文本框、标题标签、input标签、form标签、下拉框、无序列表、表单域、相对路径等HTML的基本内容编写完成。

本次实现都是HTML很基础的内容,具体代码实现如下:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<table align="center" width="600" cellspacing="0" cellpadding="0" align="center">
<caption><h4>青春不常在,抓紧谈恋爱</h4></caption>
<tr>
<td>性别</td>
<td>
<input type="radio" checked="checked" name="sex"/>
<img src="综合案例/images/man.jpg">男
<input type="radio" name="sex"/>
<img src="综合案例/images/women.jpg">女
</td>
</tr> <tr>
<td>生日</td>
<td>
<select>
<option>请选择年</option>
<option selected="selected">2020</option>
<option>2021</option>
</select> <select>
<option>请选择月</option>
<option>1</option>
<option>2</option>
</select> <select>
<option>请选择日</option>
<option>1</option>
<option>2</option>
</select>
</td>
</tr> <tr>
<td>所在地区</td>
<td><input type="text" value="北京" maxlength="3"/></td>
</tr> <tr>
<td>婚姻状况 </td>
<td>
<input type="radio" name="married" />未婚
<input type="radio" name="married" />离婚
<input type="radio" name="married" />丧偶
</td>
</tr> <tr>
<td>学历</td>
<td>
<input type="text"/>
</td>
</tr> <tr>
<td>月薪</td>
<td>
<input type="text"/>
</td>
</tr> <tr>
<td>手机号</td>
<td>
<input type="text"/>
</td>
</tr> <tr>
<td>昵称</td>
<td>
<input type="text"/>
</td>
</tr> <tr>
<td>喜欢的类型 </td>
<td>
<input type="checkbox" name="love"/>妩媚
<input type="checkbox" name="love" />柔美
<input type="checkbox" name="love" />可爱
<input type="checkbox" name="love" />小鲜肉
<input type="checkbox" name="love" />型男
<input type="checkbox" name="love" />气质
</td> </tr> <tr>
<td>自我介绍</td>
<td>
<textarea cols="30" rows="10"></textarea>
</td>
</tr> <tr>
<td></td>
<td>
<input type="image" src="btn.png"/>
</td>
</tr> <tr>
<td></td>
<td>
<input type="checkbox" />我同意注册条款和会员加入标准
</td>
</tr> <tr>
<td></td>
<td>
<a href="#">我是会员,立即登录</a>
</td>
</tr> <tr>
<td></td>
<td>
<ul>
<h4>我承诺</h4>
<li>年满18岁、单身</li>
<li>抱着严肃的态度</li>
<li>真诚寻找另一半</li>
</ul>
</td>
</tr> </table>
</body>
</html>

需求2:使用form表单生成用户名、密码的提交。

本次实现都是HTML很基础的内容,具体代码实现如下:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<form action="#" method="get">
用户名:<input type="text"/><br />
<br />
密码:<input type="password" maxlength="6"/><br />
<br />
性别
<input type="radio" name="sex" checked="checked"/>男
<input type="radio" name="sex" />女
<input type="submit" value="提交所填" />
<input type="reset" value="重新填写" />
</form> </body>
</html>

HTML 实战生成一张页面的更多相关文章

  1. 利用PHP的ob函数实现生成静态化页面

    之前用过一些开源的CMS管理系统,当时就很好奇后台中的生成HTML静态文件是怎么实现的.今天和同事讨论了下,没想到同事之前做过这类的生成静态页面的功能,果断向他请教了下. 经他讲解后,才知道其实生成静 ...

  2. visual studio 2015中的webapi生成helpPage,页面不显示方法说明问题解决

    环境: vs2015.win7 参考:http://www.cnblogs.com/Erik_Xu/p/5638381.html 生成的help页面如下:,并没有显示控制器和方法. 原因是:新建项目时 ...

  3. 利用scrapy-splash爬取JS生成的动态页面

    目前,为了加速页面的加载速度,页面的很多部分都是用JS生成的,而对于用scrapy爬虫来说就是一个很大的问题,因为scrapy没有JS engine,所以爬取的都是静态页面,对于JS生成的动态页面都无 ...

  4. CROSS JOIN连接用于生成两张表的笛卡尔集

    将两张表的情况全部列举出来 结果表: 列= 原表列数相加 行= 原表行数相乘     CROSS JOIN连接用于生成两张表的笛卡尔集. 在sql中cross join的使用: 1.返回的记录数为两个 ...

  5. wordpress用Elementor拖拽生成酷炫页面

    很多朋友看到wordpress网站做得很高大上,想知道是怎么做到的,其实很简单,用Elementor就能拖拽生成酷炫页面,ytkah就直接上干货了. 1.安装Elementor,到wordpress后 ...

  6. JSP生成静态Html页面

    [转载]JSP生成静态Html页面 在网站项目中,为了访问速度加快,为了方便百度爬虫抓取网页的内容,需要把jsp的动态页面转为html静态页面.通常有2种常用的方式: 1.伪静态,使用URL Rewr ...

  7. 第三百七十六节,Django+Xadmin打造上线标准的在线教育平台—创建用户操作app,在models.py文件生成5张表,用户咨询表、课程评论表、用户收藏表、用户消息表、用户学习表

    第三百七十六节,Django+Xadmin打造上线标准的在线教育平台—创建用户操作app,在models.py文件生成5张表,用户咨询表.课程评论表.用户收藏表.用户消息表.用户学习表 创建名称为ap ...

  8. 第三百七十五节,Django+Xadmin打造上线标准的在线教育平台—创建课程机构app,在models.py文件生成3张表,城市表、课程机构表、讲师表

    第三百七十五节,Django+Xadmin打造上线标准的在线教育平台—创建课程机构app,在models.py文件生成3张表,城市表.课程机构表.讲师表 创建名称为app_organization的课 ...

  9. 第三百七十四节,Django+Xadmin打造上线标准的在线教育平台—创建课程app,在models.py文件生成4张表,课程表、课程章节表、课程视频表、课程资源表

    第三百七十四节,Django+Xadmin打造上线标准的在线教育平台—创建课程app,在models.py文件生成4张表,课程表.课程章节表.课程视频表.课程资源表 创建名称为app_courses的 ...

随机推荐

  1. 配置PoE交换机功能

    组网图形 PoE简介 随着网络中IP电话.网络视频监控以及无线以太网应用的日益广泛,通过以太网本身提供电力支持的要求也越来越迫切.多数情况下,接入点设备需要直流供电,而接入点设备通常安装在距离地面比较 ...

  2. 都知道的copy_from_user

    Q:一直知道内核和用户态的数据交互前都需要 校验地址的合法性,一般都用copy_from/to_user完成数据拷贝,那么为什么要这样呢?? A:看了一些blog以及Stack Overflow 主要 ...

  3. docker学习汇总

    学习思路: l Docker是什么? l Docker有什么特点? l Docker 怎么用? l 不论什么知识框架都要以官方文档为主 一.认识docker Docker的概念 Docker是一个开源 ...

  4. CSS属性(边框)

    1.边框 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="U ...

  5. 如何使用Camtasia进行电脑录制屏幕

    在现在的网络互联网时代,越来越多的人走上了自媒体的道路.有些自媒体人会自己在网络上录制精彩视频,也有一些人会将精彩.热门的电影剪辑出来再加上自己给它的配音,做成大家喜欢看的电影剪辑片段.相信不管大家是 ...

  6. Jmeter如何监测被测服务器资源

    前言 Jmeter自身不支持对服务器的监控,需要安装第三方插件进行扩展. 下载插件 jmeter添加插件步骤,选项-PluginManager 勾选上PerfMon选项,点击右下角的Apply-按钮 ...

  7. HDU4632 Palindrome subsequence

    标签(空格分隔): 区间qp Palindrome subsequence \[求一个string的 回文子序列 的个数 \] 少废话,上代码. #include<bits/stdc++.h&g ...

  8. 【电子取证:FTK Imager篇】FTK Imager制作镜像详细介绍

    FTK Imager制作镜像详细介绍 以DD镜像制造为例,详细介绍了FTK Imager创建镜像的过程,记得大学的时候学习这些没什么教程,找到的资料也是语焉不详,故在此啰嗦一番---[suy] 一.磁 ...

  9. php数字运算与格式化

    浮点数高精度运算 PHP 官方手册 浮点数的精度有限.尽管取决于系统,PHP 通常使用 IEEE 754 双精度格式,则由于取整而导致的最大相对误差为 1.11e-16.非基本数学运算可能会给出更大误 ...

  10. 啊这......蚂蚁金服被暂缓上市,员工的大house没了?

      没有想到,网友们前两天才对蚂蚁员工人均一套大 House羡慕嫉妒恨,这两天又因为蚂蚁金服被叫停惋惜.小编看了一下上一篇的时间,正好是11月3日晚上被叫停.太难了!   这中间出现了什么变故呢?原本 ...