1.html究竟是什么?

从字面上理解,html是超文本标记语言hyper text mark-up language的首字母缩写,指的是一种通用web页面描述语言,是用来描述我们打开浏览器就能看到的各种web页面的。

所以说,写html代码根本和 编程都扯不上边,不要一听源码两个字就绝望,以为要你攻读计算机学位似的。

你只要知道当你要在网页中展示内容的时候该用哪个标记就可以了。

即使一开始记不 住,也没关系,查课本,问度娘,分分钟搞定,用过几次,想记不住都难。

最近风靡各大博客和写作平台的markdown大家知道吧,html比它复杂不了多少。

目前最新版本是html5,比之前的版本有了质的飞跃,被新媒体领域寄予了厚望,特别是在移动端的应用,进行的如火如荼。

关于html5,可以另外开个话题来讲。今天不再多说。

2.html文档基本结构

首先需要明确一个概念,html文档是由元素组成的。基础文档元素有4个,任何HTML文档都需要所有这些元素。

每个html文档都需要以DOCTYPE元素开头,这样的目的是告诉浏览器:“即将要打开的文档类型是html,请按照html解析规则进行处理。

有的同学会发现,即使不写DOCTYPE元素,大多数浏览器仍然能够正确显示文档的内容。

但是在这里提醒大家的是,这样做并非明智之举,长期来看,过分依赖浏览器的“善解人意”,会使你在关键时刻抓狂。

html元素是html文档的根元素,里面包含真正的html内容。

html元素由head元素和body元素组成。

head元素中包含文档的元数据等信息,在html5中规定head元素中必须包含一个title元素。

body元素用于包装要展示在浏览器窗口中的文档内容。

他们之间的关系可以这样来理解,head元素本身不是文档内容,但是提供了关于后面的包装在body中的文档内容的重要信息。

对于用户来说,重要的是body元素里面的内容,但是若想要成功展示body元素中的内容,则离不开head元素。

所以说,当你创建一个下面这样的html文件,实际上就完成了一个web页面的创建。

 <!DOCTYPE HTML >
<html>
<head>
<title>我的第一个web应用</title>
</head>
<body>
</body>
</html>

但是,当使用浏览器打开这个页面的时候,会发现展示在你面前的是一个空白窗口,那是因为我们并没有往里添加任何实质性的内容。

就好比我们印刷了一本书,但这本书正文页面全部都是空白一样。但不管怎样说,它仍然是一本书。

要想设计开发出真正实用的网页,需要添加各种元素。

3.html标记基本语法

在《HTML5权威指南》中有这样一句话:“html是一种标记语言。其标记以应用于文档内容(例如文本)的元素为其存在形式”。

通俗来讲就是要想让浏览器正确执行你的指令,必须使用标记。这些标记是早就定义好了的,不能自己创造。

标记是个什么东东呢?我们上面的代码中就用到了,像 <html>  <head>  <body> 等这些写在尖括号里面的内容统统都是标记。而且绝大多数的标记是成对出现的。

在html文档中一个应用了标记的元素基本语法如下:

<标记名称>元素内容</标记名称>

其中的  <标记名称> 是开始标记, </标记名称> 结束标记, 元素内容 则指的是想要显示在浏览器窗口中的内容。

那么是不是所有的元素标记都有具有以上三要素呢?

并非如此。

当元素的开始标记和结束标记之间没有内容时,就是一个空元素

空元素可以用一个更简洁的方式表达出来,就是将开始标记和结束标记合二为一,只用一个标记表示,比如 <标记名称/> 。

另外还有一些特殊的元素,使用一个标签来表示,称为虚元素比如用于在页面中插入水平线的 <hr> ,就是这样一种元素。

我们称成对出现的标记为双标记,反之则为单标记。

那html有多少标记呢?算上html5新增标记,大约有119个。

而最常用的则要少的多。

根据80/20原则,只要掌握约24(119*20%)个最常用标记,即可以解决80%的问题。

是否觉得欢欣鼓舞呢?

4.html常见标记及应用方法

新手熟悉以下标记的使用即可。

<html>,<head>,<body><title>

<style><script>

<div>,<p>,<br>

<img>,<a>,<embed>

<form>,<input>,<button>,<txtarea>,<label>

<frame>,<frameset>,<iframe>

<ul>,<ol>,<li>

<table><tr><td>

因为网络上资源很多,在这里不再重复介绍。

推荐w3school这个网站,里面有基础教程和高级教程,还有十分完备的参考手册,实在是初学者学习的好去处。地址如下:

http://www.w3school.com.cn/index.html

另外:推荐《html5权威指南》这本书,内容采用基于问题的组织方式,而且是经典书籍,利于正三观。

后期我会结合CSS,以具体例子的形式给大家详细讲解html标记的使用。

我的观点是,不要将html文档本身弄得太复杂,尽量使用语义性较强的标记,而少用主要功能是改变显示样式的标记,将样式交给CSS。

版权声明:本文为作者原创,如需转载,请注明出处。谢谢!

html快速入门(基础教程+资源推荐)的更多相关文章

  1. Markdown新手快速入门基础教程

    Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档. 当前许多网站都广泛使用 Markdown 来撰写帮助文档或是用于论坛上发表消息.例如:GitHub.简书.redd ...

  2. 【Markdown】新手快速入门基础教程

    Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档.当前许多网站都广泛使用 Markdown 来撰写帮助文档或是用于论坛上发表消息.例如:GitHub.简书.reddi ...

  3. Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 0. 准备工作

    一.关于 Python Python 是全球使用人数增长最快的编程语言!它易于入门.功能强大,从 Web 后端 到 数据分析.人工智能,到处都能看到 Python 的身影. Python 有两个主要的 ...

  4. Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 7. 条件循环

    条件循环能够让程序在条件成立时(即为真时)重复执行循环体中的语句.如果条件一直成立(即永远不会为假),则循环会一直进行下去,不会停止.如果初始时,条件不成立,则循环 1 次也不会执行.Python 中 ...

  5. Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 6. 条件

    前面的教程中,我们已经可以让小海龟绘制出各种图形了.但是,所有绘图的代码都是预先编好的,程序一旦运行起来,运行结果(绘制的图形)就是固定不变的.这一节中,咪博士将教大家如何让海龟响应用户的输入. im ...

  6. Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 5. 参数

    上一个教程中,咪博士带大家学习了函数的使用.例如,line_without_moving 函数,可以让海龟先画出一条线段,然后再回来起点. def line_without_moving(): tur ...

  7. Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 4. 函数

    什么样的程序员才是优秀的程序员?咪博士认为“慵懒”的程序员才是真正优秀的程序员.听起来不合逻辑?真正优秀的程序员知道如何高效地工作,而不是用不止境的加班来完成工作任务.函数便是程序员高效工作的利器之一 ...

  8. Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 3. 循环

    在前面的教程中,咪博士留了一道练习题给大家—-画正方形,相信聪明的你应该已经画出来了. 下面是咪博士实现的代码. 是不是跟你的代码很像呢? import turtle turtle.forward(2 ...

  9. Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 2. 变量

    大家在中学就已经学过变量的概念了.例如:我们令 x = 100,则可以推出 x*2 = 200 试试下面这段 Python 代码 import turtle turtle.shape("tu ...

随机推荐

  1. myeclipse快捷键

    转: 当时我看到struts2讲解视频的时候,讲解员居然能一下子注释掉好几行代码,而且注释的很整齐,然我大吃一惊,上网搜了下Myeclipse的快捷键还真多选择你要注释的那一行或多行代码,按Ctrl+ ...

  2. delphi XE 5 Android 真机调试简易安装教程

    ① FireMonkey[DELPHI XE5]QQ群号:165232328,群内超过1600移动开发爱好者 第一步,打开手机中的USB调试 电脑自动装驱动,但是找不到 去手机官网下载驱动 手动安装驱 ...

  3. 对c++ public、protected、private关键字的理解

    首先要明确一下: 1.这三个关键字在两种地方会用到,一个是对类的成员变量和成员函数修饰时(比如私有的成员变量,受保护的成员变量·,公有的函数),还有一种是对继承方式的修饰(比如公有继承,保护继承). ...

  4. SqlBulkCopy批量添加数据

    var sqlconn = ConfigurationManager.ConnectionStrings["SQLConnStringRead"].ConnectionString ...

  5. [转]vb socket通信(TCP/UDP)一对一、多对一

    VB Socket编程(Winsock控件创建TCP/IP客户机/服务器程序)    Winsock控件建立在TCP.UDP协议的基础上,完成与远程计算机的通信.即使对TCP/IP不太熟悉的用户,使用 ...

  6. mysql GROUP_CONCAT+ GROUP BY + substring_index获取分组的前几名

    mysql方法来源于:http://www.cnblogs.com/jjcc/p/5896588.html ###在网上看到一篇,非常赞的方法### 比如说要获取班级的前3名,mysql就可以用GRO ...

  7. 04 KVC|KVO|Delegate|NSNotification区别

    一. iOS 中KVC.KVO.NSNotification.delegate 在实际的编程中运用的非常多,掌握好他们的运行原理和使用场合对于我们程序的开发将会带来事办工倍的效果:   二. KVC ...

  8. 微信小程序-视图模板

    定义模板 使用name属性,作为模板的名字.然后在<template/>内定义代码片段,如: <!-- index: int msg: string time: string --& ...

  9. python走起之第十三话

    前景介绍 到目前为止,很多公司对堡垒机依然不太感冒,其实是没有充分认识到堡垒机在IT管理中的重要作用的,很多人觉得,堡垒机就是跳板机,其实这个认识是不全面的,跳板功能只是堡垒机所具备的功能属性中的其中 ...

  10. Nodejs学习总结 -Express入门(一)

    Express是基于Node.js平台开发的Web应用开发框架,下面我们入手学习. 官网 : http://www.expressjs.com.cn/ github:https://github.co ...