介绍

网络时代已经到来。现在对人们来说,每天上网冲浪已经成为一种最为常见的行为。

在网页浏览器中输入一段文本地址,就像http://www.codeproject.com,等待一下,网页就加载到浏览器窗口中。一个典型的网页是由文本、图像和链接组成的。除去内容上的差异,不同网站的网页也具有不同的外观和感受,以实现在网络上建立自己的身份品牌的目的。

如果你也曾想要了解你屏幕上的这些网页是如何被创建出并以各式各样的方式渲染的,那么这里正是你可以了解到这些知识的地方。让我们一起走进在浏览器中创建了这么多网页的两项核心技术HTML、CSS。

简单的说,HTML提供了页面基本的框架,而CSS丰富了页面的表现。俗话说:“一图胜千言”。下图1中也很好的诠释了应用CSS前后之间的差别。

应用CSS之前                                                 应用CSS之后

很早之前

HTML的诞生

时间回到1989年,一个CERN的年轻天才软件工程师Tim Berners-Lee ,发明了万维网。次年,他创作了奠定今天网络基础的三项技术:

HTML:超文本标记语言。用于构建、发布和链接网络文件的标准。

URL:统一资源标识符。分配给网络上每个资源一个独特的“地址”,以便更容易的访问。

HTTP:超文本传输协议。一个用于网络上定义网页与消息的格式与传输的通信协议。

顾名思义,HTML通过将内容嵌入在某些预定义的标签中,如

、和

来标记网页上的每一个文本。任何浏览器都知道如何正确地显示括号标签中文本。

在网络迅速成长的同时,一些新的HTML标签,如和

混乱状态

随着网络的普及,许多不同的浏览器出现了。一个接一个,马赛克,网景,紧接着微软也进军浏览器市场,每一个都引入自己独有风格的标签来达到增加市场份额和迎合Web开发者需求的目的。HTML已经开始偏离原先作为纯粹的结构提供者的根本了。

20世纪90年代中期,浏览器战争爆发了,这也带来了网络的混乱,很多用户感到不满。网页中专属标签展现不同内容或者在对立的浏览器中无法展示完全都是常见的抱怨。混乱的状态也引起了浏览器的兼容性问题。

在90年代后期,这种混乱的状态终于在万维网联盟(W3C)的控制下结束。他们决定清理HTML,以使其回到原有结构提供者的角色。同时引入一种新技术,起到网页中展现的作用。这个明智的举动,促成了CSS的引进。

CSS的黎明

CSS的全名是层叠样式表。它是Web的展现语言。它通过向各个HTML标签分配字体、颜色或布局的值,来增加了网页的样式。然而,CSS是不只用于HTML,它也适用于任何基于XML标记的语言。

这种关注点的分离,带来了很多好处。这也使得从一个单个CSS页面将层叠样式应用到一个网站的不同页面成为了可能,避免了要在网站中的每一个页面艰难的编写相同的信息代码。换句话说,使用CSS极大的释放了网站的维护。

此外,这也使得不同环境中,在相同文件应用不同的CSS成为可能。例如大屏幕、小屏幕或者打印机,这些让使用者感觉欣喜。

HTML5和CSS3

HTML5是HTML的最新标准,取代了以前的HTML 4.01。

HTML5诞生于W3C和Web超文本应用技术工作组(WHATWG)之间的合作。HTML5的创建,是以以下三点为目标:

减少对插件的依赖(如Flash)

使用标记代替脚本

独立的设备和平台

读取HTML设计原则,有助于更好地理解为什么HTML5就像是今天这个样子。

说到CSS,它的最新标准是CSS3,这与早期版本是完全向后兼容的。CSS3的规范是由W3C 开发的,目前仍处于开发阶段,其最新的版本是CSS Snapshot 2010。

HTML编辑器

要以原本的形式了解HTML的本质,我强烈建议使用文本编辑器如PC版的Notepad,Mac的TextEdit,或者任何开源文本编辑器如Notepad++。在这个阶段,远离那些承诺所见即所得的专业HTML编辑器,这些编辑器并非能帮你有效的学习。

来吧,现在启动你的文本编辑器。

步骤1 - 请真实的键入以下图2中到文本编辑器。我特意挑选了截图文字显示的代码片段,请不要简单的复制和粘贴。

图2:编写HTML代码

第2步 - 创建一个新的叫mysite的文件夹。此文件夹中,保存你新创建的以.htm或.html为文件扩展名的HTML文件。事实上,我建议你第一次创建这个文件夹时,就打开这个文件夹并保存你的文件。我选择将文件命名为hello.html第3步 - 双击你的HTML文件,并在浏览器中查看你的第一个网页(图3)。恭喜!你刚刚成功地创建HTML网页。

图3:查看关于浏览器

第4步 - 将你的文本编辑器和浏览器并排放置,并交叉检查它们。在一侧你可以看到HTML源代码,另一侧可以看到浏览器是如何解释和渲染它。你将看到封闭在各自的标签内的内容显示在浏览器中,而标签并未显示。看起来有一个问题。为什么你“真实”键入的空格和缩进,没有显示出来?“Hello HTML”的标题标签显示在哪里?你能在浏览器页面中找到它吗?

请往下阅读

HTML基础

正如你所注意到的,HTML的内容都包含在标签对中,如

title>,

h1>和

p>。让我们开始使用一些基本的HTML标签来熟悉一下。

任何HTML文档都是以标签开始的第一行代码。这句代码会告诉浏览器页面中编写HTML代码的版本,以便浏览器能正确的渲染。从这个意义上来说,不是HTML标签。

HTML 4.01版本的看起来是这样的

我们示例文件中声明的为HTML5,这是HTML的最新标准。它比前面的版本更加简洁易读。

在W3C上可以找到更多的信息。

标签意味着HTML文件的开始,同时在文件的最后一行必须以 html>标签的文标签结束。

,

html中第一行代码,HTML5 CSS3初学者指南(1) – 编写第一行代码相关推荐

  1. HTML5 CSS3初学者指南(2) – 样式化第一个网页

    介绍 我们已经使用基本的 HTML 编写了一个网页.但是,写出来的 HTML 代码的网页看起来很平淡,没有吸引力. 如何改善这种很平淡的页面呢? 让我们开始使用网页的基本样式来改善页面效果,我们将会使 ...

  2. HTML5 CSS3初学者指南(3) – HTML5新特性

    介绍 本文介绍了 HTML5 的一些新特性.主要包含以下几个方面: Web 存储 地理位置 拖放 服务器发送事件 Web存储 HTML5 Web 存储的设计与构想是一个更好的机制来存储客户端的网络数据 ...

  3. 在 Windows 中编程 Raspberry Pi Pico 的初学者指南

    在 Windows 中编程 Raspberry Pi Pico 的初学者指南 在本教程中,我们将了解如何在 Windows 系统中安装和设置用于编程 Raspberry Pi Pico 的 Visua ...

  4. html玫瑰花效果代码,html5渲染3D玫瑰花情人节礼物js特效代码

    情人节马上就要到来了,这里给程序员前端设计师们献上一个,html5渲染而成的3D玫瑰花js效果,可以作为虚拟的情人节礼物送给自己的爱人.支持html5的浏览器查看. 查看演示 下载资源: 16 次 下 ...

  5. html进度条倒计时代码,html5+css3进度条倒计时动画特效代码【推荐】_html5教程技巧...

    html5+css3进度条倒计时动画特效这个作品在今天上网找网络资源的时候无意中发现的,看到效果非常棒并且很实用,就第一时间把它整理出来与大家分享了,主要用到了html5.javascript和css ...

  6. 跨平台html5页面代码,HTML5+CSS3跨平台网页设计实例教程

    HTML5+CSS3跨平台网页设计实例教程 编辑 锁定 讨论 上传视频 <HTML5+CSS3跨平台网页设计实例教程>是2018年8月清华大学出版社出版的图书,作者是陈承欢.韩耀坤.颜珍平 ...

  7. html5语音闹钟代码,HTML5+CSS3闹钟动画特效源码

    效果图 各位朋友大家好,今天给大家带来的是 <HTML5+CSS3闹钟动画特效源码> 可以添加在网站里面作为一个炫酷的小装饰 代码过长需要文档版源码来我的前端群581549454,已上传到 ...

  8. 如何编写代码解决问题,初学者指南

    介绍 这里的所有代码都在C#中--但这都是非常简单的东西,任何语言的处理过程都是相同的. 最近,存在一个涉及大量作业的问题:编写一种方法来读取文件并返回所有行,然后返回包含三个星号的行.即使对于初学者 ...

  9. php 教师批改作业代码,html5 canvas做批改作业的小插件代码示例

    本篇文章小编给大家分享一下html5 canvas做批改作业的小插件代码示例,代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 需求分析 能进行批改,就是相当 ...

最新文章

  1. NUMECA FINE Turbo 14中文版
  2. Android上常见度量单位【xdpi、hdpi、mdpi、ldpi】解读
  3. Leetcode 190. 颠倒二进制位 解题思路及C++实现
  4. linux 网络服务器 源码下载,linux下 各类tcp网络服务器的实现源代码.doc
  5. 在去长春和松源的路上
  6. EqualLogic全攻略视频[(四)高级管理]
  7. java验证身份证号码是否有效源代码
  8. Java面试题 20在面向对象编程里,经常使用is-a来说明对象之间的继承关系
  9. DirectShow录屏,帧率不可控制?
  10. 数据仓库系列7-ETL 子系统与技术
  11. 数据分析报告4:睡眠情况分析
  12. 基于R语言的聚类(谱聚类)
  13. 一文带你掌握监控进程技术实现
  14. STM32F1系列以及CM3内核的时钟与中断内容详解
  15. pyscripter与python的关系_我用过的最好的python编辑器PyScripter
  16. SSL2811 2017年10月30日提高组T2 摘Galo(树形dp)
  17. 棋盘类游戏中的栅格地形渲染
  18. sinx的导数是多少
  19. 开拓高主频CPU场景,硅云第二代云服务器S2近日正式发布
  20. 浅谈C++中memset函数的用法

热门文章

  1. “要么你去驾驭生命,要么生命驾驭你。你的心态决定谁是坐骑,谁是骑师。”...
  2. 使用cloudbase-init初始化windows虚拟机
  3. 鬼题Ghost [manacher]
  4. SDP(12): MongoDB-Engine - Streaming
  5. 小K的农场(差分约束)
  6. 练习:写一个脚本,完成以下任务
  7. jQuery easing 使用方法
  8. 02Framelayout:帧布局
  9. zoj3715 Kindergarten Election
  10. FreeTextBox使用详解