1.前言

现如今科技进步,足不出户尽晓天下事,一转身便仿若隔世茫然。科技绽放时代,网络技术对人们的触变无疑是深远而重大的,隐于缤纷绚丽的网页背后,是前端的蜕变更新。

如今,随意点开页面,绚丽华彩的特效及流畅的用户体验,是以前始料未及的。从切图到框架,从组件到模块,从简单到系统,前端渐成一方世界。

2.历史

1989年,出于地域交流不便,欧洲粒子物理实验室研发出一套远程资源共享系统,该系统基于浏览器实现文本信息的交换,万维网(www,即world wide web)诞生。

1993年,伴随万维网的萌芽,超文本标记语言(html,即HyperText Markup Language)顺势诞生,语义化标签让页面结构清晰简洁。

1994年,关于html标准化的万维网联盟(w3c,即world wide web consortium)建立,从此拉开万维网标准化规范化的革命历程。

在html的历史里,有两大版本值得注意,html 4.01版本(1999年),html 5版本(2008年),尽管路不同起,但在各自的时代里举足轻重。

尽管不在编程语言的范畴里,但它作为一门标记语言,负责页面的结构及语义,用正确的标签解释正确的页面结构。所及即所得,是html较为容易上手的的一点,从标签入手很快便能写出可读可维护的页面。

3.文档

网页丶页面及文档,通俗地说,可以理解为同一事物。文档分类型,除html类型外,还有xml,xhtml等类型,相较来说 html 类型的文档较为常见。

文档声明(DTD,即Document Type Denifition),声明页面的文档类型及版本,文档声明的意义是让浏览器能正确识别文档类型,并调用相应的处理引擎处理该文档。

如今的html,逐渐撇弃html4.01全面拥抱html 5,但有时仍需做兼容处理,在此介绍该两个版本的两种不同声明方式:

//html 4.01文档声明:w3c标准,写法繁琐但兼容性较好。
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
//html 5文档声明:去除部分非语义化标签,新增部分语义化标签,简洁清晰。
<!doctype html>

4.结构

<html>为文档根标签,除文档声明外,文档所有内容均包含在<html>标签里,而html标签及其内容组成的元素成为为根元素。

根元素下,包含<head><body>两大标签:

<head>即头部标签,主要包含文档的元数据及各类声明,如字符编码,图标,样式表,脚本等,该元素内容通常不会在页面中直接显示,但对文档的解析及处理非常关键;

<body>即主体标签,负责页面内容的展示,该元素内的内容便是我们在浏览器里所看到的内容

元素:语法概念,由标签内容属性组成,以元素为语法单位可以有更直观的感受。

标签:主要语法结构,可分为单标签及双标签,<hr>为单标签,而<a></a>为双标签(其中<a>为开始标签,</a>为结束标签)。

内容:即双标签内的内容,单标签没有元素内容(或说没有直接内容)。

属性:存在于开始标签内,以键值对的形式存在,布尔值类型的属性可以省略值,如hidden。

以下,以某元素为例解释下元素的组成内容:

<a href="http://www.html.com">Hello,World</a>为元素,<a></a> 为标签; Hello,World 为元素内容,href="http://www.html.com"为元素属性。

5.标签

随着html5的普及,语义化编写显得愈来愈重要,从前可以是span+div的格局,或table+font的布局,如今却是难以支撑。时代在进步,技术在迭代,身处变革环境里的我们同样需要紧随科技的步伐。

从作用来讲,语义化有助于盲视者的听力理解,也利于搜索引擎的爬取,同时也利于日后代码的维护。踏过html4.01的时代,html 5包含更多语义化的标签,未来也许还会增加。

[01]HTML基础之简单介绍的更多相关文章

  1. 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍

    一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...

  2. iOS开发基础-KVC简单介绍

    一.KVC介绍 键值编码(Key Value Coding,KVC):使开发者不必进行任何操作就可以进行属性的动态读写. KVC操作方法由 NSKeyValueCoding 协议提供,而 NSObje ...

  3. ActiveMQ基础教程----简单介绍与基础使用

    概述 ActiveMQ是由Apache出品的,一款最流行的,能力强劲的开源消息总线.ActiveMQ是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,它非常快速,支持多 ...

  4. JSON基础,简单介绍

    JSON(JavaScript Object Notation(记号.标记)) 是一种轻量级的数据交换格式.它基于JavaScript(Standard ECMA-262 3rd Edition - ...

  5. CSS基础之简单介绍

    网页诞生初期,没有描述样式的语言,创建了很多用于描述样式的标签.但这些标签破坏了html作为一门结构语言的表现. 于是,W3C在1995年开始起草CSS,提出将结构和样式分离的解决方案. 元素 元素是 ...

  6. SpringMVC总结二:Controller的请求映射方式(RequestMapping)简单介绍

    在SpringMVC总结一:快速入门的基础上简单介绍一下请求映射的方式: 1,标准映射规则 1. @RequestMapping可以设置在类上,也可以设置在方法上 2. 请求的映射规则是:类上的Req ...

  7. 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍

    一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...

  8. salesforce lightning零基础学习(一) lightning简单介绍以及org开启lightning

    lightning对于开发salesforce人员来说并不陌生,即使没有做过lightning开发,这个名字肯定也是耳熟能详.原来的博客基本都是基于classic基于配置以及开发,后期博客会以ligh ...

  9. C# 基础知识 (四).C#简单介绍及托管代码

            暑假转瞬即逝,从10天的支教生活到1周的江浙沪旅游,在这个漫长的暑假中我经历了非常多东西,也学到了非常多东西,也认识到了非常多不足之处!闲暇之余我准备又一次进一步巩固C#相关知识,包含 ...

随机推荐

  1. MySQL JDBC Driver 8.0+设置服务器时区

    遇到一个问题,线下环境测试数据的查询完全没有问题,但是线上环境却没法查询出数据,并且从mybatis输出的日志来看,查询参数也没有问题,数据库中数据也是存在的,查询参数类型是java.util.Dat ...

  2. 还在用迭代器处理集合吗?试试Stream,真香

    前言 上一篇博客一文带你深入了解 Lambda 表达式和方法引用我给大家介绍了 Java8 函数式特性中的 Lambda,这篇文章我将继续讨论 stream 流的用法 声明:本文首发于博客园,作者:后 ...

  3. 最小生成树的本质是什么?Prim算法道破天机

    本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是算法和数据结构专题20篇文章,我们继续最小生成树算法,来把它说完. 在上一篇文章当中,我们主要学习了最小生成树的Kruskal算法.今 ...

  4. CSS像素与绝对像素

    之前在电视的webview上投放广告页面时,遇到了个问题,就是视窗大小和文档大小不一致.最后发现原来有CSS Pixel这个概念,搜集了一些资料,希望能把这个问题捋捋清楚. 首先提出一个大家常常会忽略 ...

  5. 小程序-云开发 bindscroll滚动事件执行setData()方法,导致scroll-view视图抖动

    需求描述 想做一个类似京东小程序首页功能列表左右滑动的效果,效果图如下 遇到的问题 1. 如何让scroll-view显示两行 做过小程序开发的都知道,scroll-view要么显示一行,可以左右滚动 ...

  6. elasticsearch 小总结

    elasticsearch 小总结 0. 起因 距离初次写关于es的文章 https://blog.csdn.net/aca_jingru/article/details/44488703 已经过去4 ...

  7. npm加载包报错 :syscall access

    $ npm install --save-dev babel-plugin-syntax-dynamic-import npm WARN checkPermissions Missing write ...

  8. PHP+Apache+MySQL+phpMyAdmin安装和配置

    下载网址: PHP:http://windows.php.net/download     版本: php-5.6.31-Win32-VC11-x64.zip Apache:https://www.a ...

  9. Docker 部署Spring Boot 项目并连接mysql、redis容器(记录过程)

    Spring Boot 项目配置 将写好的Spring Boot 项目通过maven 进行package打包获得可执行Jar 再src/main/docker(放哪都行)下编写创建Dockerfile ...

  10. python3.x 基础三:字符集问题

    总结了一张表,更详细信息百度百科: 序号 年份 编码 标准协会 特点 二进制长度 字符长度 表现 1 1967 ASCII 美国国家标准学会(American National Standard In ...