HTML5/CSS3基础
1. HTML
1.1 什么是HTML
- HTML是用来制作网页的标记语言
- HTML是Hypertext Markup Language的英文缩写,即超文本标记语言
- HTML语言是一种标记语言,不需要编译,直接由浏览器执行
- HTML文件是一个文本文件,包含了一些HTML元素,标签等
- HTML文件必须使用.html或.htm为文件名后缀
- HTML是大小写不敏感的,HTML与html是一样的
- HTML是由W3C的维护的
- HTML 是通向 WEB 技术世界的钥匙。
1.2 发展历史
- HTML是从2.0版本开始的,实际上没有1.0的官方规范,在1993年6月作为互联网工程工作小组(IETF)工作草案发布(并非标准) HTML 2.0——1995年11月作为RFC 1866发布,在RFC 2854于2000年6月发布之后被宣布已经过时
- HTML 3.2——1997年1月14日,W3C推荐标准
- HTML 4.0——1997年12月18日,W3C推荐标准
- HTML 4.01(微小改进)——1999年12月24日,W3C推荐标准
- HTML 5——2014年10月28日,W3C推荐标准
1.3 HTML5的由来
- HTML5草案的前身名为 Web Applications 1.0,于2004年被WHATWG提出,于2007年被W3C接纳,并成立了新的 HTML 工作团队。
- HTML 5 的第一份正式草案已于2008年1月22日公布。HTML5 仍处于完善之中。然而,大部分现代浏览器已经具备了某些 HTML5 支持。
- 2012年12月17日,万维网联盟(W3C)正式宣布凝结了大量网络工作者心血的HTML5规范已经正式定稿。根据W3C的发言稿称:“HTML5是开放的Web网络平台的奠基石。”
- 2013年5月6日, HTML 5.1正式草案公布。该规范定义了第五次重大版本,第一次要修订万维网的核心语言:超文本标记语言(HTML)。在这个版本中,新功能不断推出,以帮助Web应用程序的作者,努力提高新元素互操作性。
- 2014年10月29日,万维网联盟宣布,经过接近8年的艰苦努力,该标准规范终于制定完成。
1.4 HTML5的优点
- 1、提高可用性和改进用户的友好体验;
- 2、有几个新的标签,这将有助于开发人员定义重要的内容;
- 3、可以给站点带来更多的多媒体元素(视频和音频);
- 4、可以很好的替代FLASH和Silverlight;
- 5、当涉及到网站的抓取和索引的时候,对于SEO很友好;
- 6、将被大量应用于移动应用程序和游戏;
- 7、可移植性好。
1.5 HTML5的兼容性
- Internet Explorer 9 以及 以上版本
- chrome、Safari、opera、Firefox和各种以wekkit为内核的国产浏览器
附:相关组织
IETF(The Internet Engineering Task Force)
国际互联网工程任务组(The Internet Engineering Task Force,简称 IETF)
互联网工程任务组,成立于1985年底,是全球互联网最具权威的技术标准化组织,主要任务是负责互联网相关技术规范的研发和制定,当前绝大多数国际互联网技术标准出自IETF。
W3C(World Wide Web Consortium)
万维网联盟(World Wide Web Consortium)
万维网联盟创建于1994年,是Web技术领域最具权威和影响力的国际中立性技术标准机构。到目前为止,W3C已发布了200多项影响深远的Web技术标准及实施指南,如广为业界采用的超文本标记语言(标准通用标记语言下的一个应用)、可扩展标记语言(标准通用标记语言下的一个子集)以及帮助残障人士有效获得Web内容的信息无障碍指南(WCAG)等,有效促进了Web技术的互相兼容,对互联网技术的发展和应用起到了基础性和根本性的支撑作用。
WHATWG(Web Hypertext Application Technology Working Group)
网页超文本应用技术工作小组是一个以推动网络HTML 5 标准为目的而成立的组织。
在2004年,由Opera、Mozilla基金会和苹果这些浏览器厂商组成。
2 HTML基本语法
2.1 HTML标签
- 标签是HTML中最基本单位,也是最重要组成部分
- 通常要用两个角括号括起来:
<
和>
- 标签都是闭合的(两种形式:成对与不成对)
- 双标签(成对):
<标签名>内容</标签名>
如:<table></table>
即分起始和结束 - 单标签(不成对):
<标签名 />
; 如:<br/>
、<hr/>
- 标签是大小写无关的,
<body>
;跟<BODY>
表示意思是一样的,标准推荐使用小写,这样符合XHTML标准。 - 对于HTML标签来讲,最重要的是语义
2.2 HTML标签属性
- HTML属性一般都出现在HTML的开始标签中, 是HTML标签的一部分。
- 标签可以有属性,它包含了额外的信息.属性的值一定要在双引号中。
- 标签可以拥有多个属性。
- 属性由属性名和值成对出现。
- 语法格式如下:
<标签名 属性名1="属性值" 属性名2="属性值" ... 属性名N="属性值">
<!– 输出内容… -->
</标签名>
2.3 HTML代码格式
任何回车或空格在源代码中都是不起作用,
所以在编写HTML代码时,都可以使用回车或者空格进行代码排版,
这样可以使代码清晰,也便于团队合作。必须保持严格的缩进规则,以Tab
键为准。
2.4 HTML 注释
<!-- 注释内容 -->
<!--
这里全是注释
都是注释
-->
2.5 HTML 实体 (特殊字符)
描述 | 实体名称 | 实体编号 | |
---|---|---|---|
空格 | |||
< | 小于号 | < | < |
> | 大于号 | > | > |
& | 和号 | & | & |
" | 引号 | " | " |
' | 撇号 | ' (IE不支持) | ' |
¢ | 分(cent) | ¢ | ¢ |
£ | 镑(pound) | £ | £ |
¥ | 元(yen) | ¥ | ¥ |
€ | 欧元(euro) | € | € |
§ | 小节 | § | § |
© | 版权(copyright) | © | © |
® | 注册商标 | ® | ® |
™ | 商标 | ™ | ™ |
× | 乘号 | × | × |
÷ | 除号 | ÷ | ÷ |
3 HTML常用标签
3.1 文档声明
你可使用此声明在 Internet Explorer 6 及以后版本中切换为严格的标准兼容模式。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!DOCTYPE html>
3.2 HTML主体结构标签
<html></html>
此元素可告知浏览器其自身是一个 HTML 文档。<head></head>
用于定义文档的头部,它是所有头部元素的容器。<head>
中的元素可以引用脚本、指示浏览器在哪里找到样式表、提供元信息等等。<body></doby>
定义文档的主体
3.3 HEAD头部标签
<title></title>
定义文档标题<base />
标签为页面上的所有链接规定默认地址或默认目标<meta />
元素可提供有关页面的元信息(meta-information),比如针对搜索引擎和更新频度的描述和关键词。<meta>
标签永远位于 head 元素内部。<meta charset="utf-8">
<link></link>
标签定义文档与外部资源的关系。<link rel="stylesheet" type="text/css" href="style.css"></link>
<link rel="shortcut icon" type="images/x-icon" href="http://www.baidu.com/favicon.ico">
<style></style>
签用于为 HTML 文档定义样式信息。<script></script>
标签用于定义客户端脚本,比如 JavaScript。script 元素既可以包含脚本语句,也可以通过 src 属性指向外部脚本文件。<script type="text/javascript" src="script.js"></script>
<script>
alert('OK')
</script>
3.4 meta元信息
- content 定义与 http-equiv 或 name 属性相关的元信息
name 把content属性关联到一个名称
author description keywords generator revised robots others
http-equiv 把 content 属性关联到 HTTP 头部。
content-type
expires
refresh
set-cookie
charset 字符集编码
编码字符集
<meta charset="utf-8"> HTML5 支持 HTML5向下兼容
<meta http-equiv="content-type" content="text/html;charset=utf-8" /> HTML 4支持
网页关键字:
<meta name="keywords" content="8-12个以英文逗号隔开的单词/词语">
网页描述信息
<meta name="description" content="80字以内的一段话,与网站内容相关">
<!--下面的内容,只需要了解。 自己看看-->
所有搜索引擎,抓取这个页面、爬行链接、禁止快照:
<meta name="robots" content="index,follow,noarchive">
all:文件将被检索,且页面上的链接可以被查询;
none:文件将不被检索,且页面上的链接不可以被查询;
index:文件将被检索;
follow:页面上的链接可以被查询;
noindex:文件将不被检索,但页面上的链接可以被查询;
nofollow:文件将被检索,但页面上的链接不可以被查询;
noarchive:文件将被检索,但禁止保存快照;
网页作者:
<meta name="author" content="obama">
网页网页生成工具
<meta name="generator" content="Sublime Text3">
定义页面最新版本
<meta name="revised" content="David, 2008/8/8/" />
网页版权信息:
<meta name="copyright" content="2009-2014©版权所有">
网页刷新信息:
<meta http-equiv="refresh" content="10;url=http://www.baidu.com"> 10秒后跳转到百度页面
3.5 格式排版标签
<br/>
换行标签,完成文字的紧凑显示。可以使用连续多个<br/>
标签来换行<hr/>
水平分割线标签,用于段落与段落之间的分割<p></p>
段落标签,里面可以加入文字,列表,表格等,可以<p></p>或<p />使用<pre></pre>
按原文显示标签,可以把原文件中的空格,回车,换行,tab键表现出来<hn></hn>
标题字标签,n为1-6,定义六级标题,而且会自动换行插入一个空行<div></div>
没有任何语义的标签
3.6 文本标签
<em></em>
表示强调,通常为斜体字<strong></strong>
表示强调(语气更强),通常为粗体字<del></del>
标签定义文档中已删除的文本。<ins></ins>
标签定义已经被插入文档中的文本<sub></sub>
文字下标字体标签<sup></sup>
文字上标字体标签<mark></mark>
H5新增 标签定义带有记号的文本 请在需要突出显示文本时使用,如搜索引擎搜索页面<ruby></ruby>
H5新增 标签定义 ruby 注释(中文注音或字符) 在东亚使用,显示的是东亚字符的发音。<rt></rt>
H5新增 标签定义字符(中文注音或字符)的解释或发音
<!--一下文本标签 作为了解-->
<cite> 用于引证、举例、(标签定义作品(比如书籍、歌曲、电影、电视节目、绘画、雕塑等等)的标题)通常为斜体字
<dfn> 定义一个定义项目
<code> 定义计算机代码文本
<samp> 定义样式文本 标签并不经常使用。只有在要从正常的上下文中将某些短字符序列提取出来,对它们加以强调的极少情况下,才使用这个标签。
<kbd> 定义键盘文本。它表示文本是从键盘上键入的。它经常用在与计算机相关的文档或手册中。
<abbr> 定义缩写 配合title属性 (IE6以上)
<bdo> 来覆盖默认的文本方向 dir属性 值: lrt rtl
<var> 定义变量。您可以将此标签与 <pre> 及 <code> 标签配合使用。
<small> 标签定义小型文本(和旁注)
<b> 粗体字标签 根据 HTML 5 的规范,<b> 标签应该做为最后的选择,只有在没有其他标记比较合适时才使用它。
<i> 斜体字标签 标签被用来表示科技术语、其他语种的成语俗语、想法、宇宙飞船的名字等等。
<u> 下划线字体标签 标签定义与常规文本风格不同的文本,像拼写错误的单词或者汉语中的专有名词。 请尽量避免使用 <u> 为文本加下划线,用户会把它混淆为一个超链接。
<q> 签定义一个短的引用。浏览器经常会在这种引用的周围插入引号。(小段文字)
<blockquote> 标签定义摘自另一个源的块引用。浏览器通常会对 <blockquote> 元素进行缩进。(大段文字) (块状元素)
<address> 定义地址 通常为斜体 (注意非通讯地址) 块状元素
<font> H5已删除 字体标签,可以通过标签的属性指定文字的大小、颜色及字体等信息
<tt> H5已删除 打字机文字
<big> H5已删除 大型字体标签
<strike> H5已删除 添加删除线
<acronym> H5已删除 首字母缩写 请使用<abbr>代替
<bdi> H5新增 标签允许您设置一段文本,使其脱离其父元素的文本方向设置。(经测试,各大浏览器都不起作用)
<mark> H5新增 标签定义带有记号的文本 请在需要突出显示文本时使用,如搜索引擎搜索页面
<meter> H5新增 定义预定义范围的度量
<progress> H5新增 标签标示任务的进度(进程)
<time> H5新增 定义时间和日期
<wbr> H5新增 规定在文本中的何处适合添加换行符。Word Break Opportunity
4 CSS基础语法
4.1 使用方法
写在标签内的style属性中
<p style="color:red;"</p>
写在<style> 元素中
<style>
p {
color:red
}
</style>
外部导入
<link rel="stylesheet" type="text/css" href="./style.css">
4.2 CSS格式组成
- 选择器 负责圈定范围,要修改的元素集合 声明 由属性名和属性值组成,中间用冒号连接(属性名:属性值),用于设定具体样式
- CSS由选择器和一或多个声明组成,多个声明之间用分号
选择器{
属性名:属性值;
属性名:属性值;
}
4.3 CSS注释
/*注释内容*/
4.4 CSS基本长度单位
- em 倍数 默认字体大小的倍数
- px:pixel,像素,屏幕上显示的最小单位,用于网页设计,直观方便;%
- 百分比
- pt:point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用;
- cm 厘米
- mm 毫米
4.5 CSS基本颜色单位
colorName 颜色名方式 red,green,blue...
RGB十进制数字表示颜色
数字(1-255) rgb(255,0,0)
百分比(1-100) rgb(100%,0,0)
RGB十六进制表示
#rrggbb
#rgb 简写
5 CSS选择器(基础)
HTML元素选择器
div { }
ID选择器
#idName { }
CLASS选择器
.className { }
全局选择器
* { }
组合: 后代元素
选择器 选择器 { }
.nav li {}
#box div {}
div .list {}
.container li {}
组合:子元素
选择器>选择器 { }
.nav>li {}
#box>div {}
div>.list {}
.container>li {}
组合:群组选择器
选择器,选择器,选择器 { } body,ul,li,p,figure,table,.item,.list-item { }
组合:多选择器
div.item { }
.item.list-item { }
div#container { }
6 选择器优先级
计算 选择符 中ID的数量(=a)
计算 选择符 中 类选择器 属性选择器 伪类选择器 的数量(=b)
计算选择符 中 标签选择器 伪对象选择器的数量 (=c)
忽略全局选择器
a的权重100 b的权重10 c的权重1 相加
7 CSS常用属性和值
7.1 字体属性
font
font:字体风格[字体加粗]<字体大小>[/行高]<字体族科>
font-family 字体族科 宋体|微软雅黑
font-family:"Arial","Helvetica",sans-serif;
font-size 字体大小
font-style 字体风格 normal | italic | oblique (斜体)
font-weight 字体加粗 normal | bold | lighter
font-variant 字体变形 normal | small-caps
7.2 文字颜色
- color 设置文字颜色
7.3 文本属性
letter-spacing 字母间隔 值为长度,可以是负值
word-spacing 词的间距(通过空格识别)
text-decoration 文字修饰
underline
overline
line-through
none(默认)
text-align 横向排列 left | right | center
vertical-align 垂直对其方式
baseline: 将支持valign特性的对象的内容与基线对齐
sub: 垂直对齐文本的下标
super: 垂直对齐文本的上标
top: 将支持valign特性的对象的内容与对象顶端对齐
text-top: 将支持valign特性的对象的文本与对象顶端对齐
middle: 将支持valign特性的对象的内容与对象中部对齐
bottom: 将支持valign特性的对象的文本与对象底端对齐
text-bottom: 将支持valign特性的对象的文本与对象顶端对齐
<percentage>: 用百分比指定由基线算起的偏移量。可以为负值。基线对于百分数来说就是0%。
<length>: 用长度值指定由基线算起的偏移量。可以为负值。基线对于数值来说为0。(CSS2)
text-indent 文本缩进 2em(2个字) 50px
line-height 设置行间距离 不允许使用负值
word-break 规定自动换行的处理方法
normal 使用浏览器默认的换行规则。
break-all 允许在单词内换行。
keep-all 只能在半角空格或连字符处换行。
word-wrap 允许长单词或URL地址换行到下一行
normal 只在允许的断字点换行(浏览器保持默认处理)。
break-word 在长单词或 URL 地址内部进行换行。
overflow-wrap CSS3中把word-wrap 改名为 overflow-wrap
white-space
normal: 默认处理方式。
pre: 用等宽字体显示预先格式化的文本,不合并文字间的空白距离,当文字超出边界时不换行。可查阅pre对象
nowrap: 强制在同一行内显示所有文本,合并文本间的多余空白,直到文本结束或者遭遇br对象。
pre-wrap: 用等宽字体显示预先格式化的文本,不合并文字间的空白距离,当文字碰到边界时发生换行。
pre-line: 保持文本的换行,不保留文字间的空白距离,当文字碰到边界时发生换行。
HTML5/CSS3基础的更多相关文章
- front-end——HTML5/CSS3基础
概述 1.什么是前端 前端即网站前台部分,运行在PC端,移动端等浏览器上展现给用户浏览的网页,随着互联网技术的发展,html5,css3,前端框架的应用,跨平台响应式网页设计能够适应各种屏幕分辨率,完 ...
- HTML5/CSS3 第一章基础
HTML5/CSS3基础 1. HTML 1.1 什么是HTML HTML是用来制作网页的标记语言 HTML是Hypertext Markup Language的英文缩写,即超文本标记语言 HTML语 ...
- 《HTML5与CSS3基础教程》笔记
以下笔记摘要页码基于 人民邮电出版社 2013年1月第1版 英文书名:HMTL5 and CSS3 Visual Quickstart Guide (Seven Edition) 前言 P2: 渐进增 ...
- 第九十三节,html5+css3移动手机端流体布局,基础CSS,头部设计,轮播设计,底部设计
html5+css3移动手机端流体布局,基础CSS,头部设计,轮播设计,底部设计 基础CSS 首先将通用css属性写好 @charset "utf-8"; /*通用样式*/ /*去 ...
- 《HTML5与CSS3基础教程(第8版)》
<HTML5与CSS3基础教程(第8版)> 基本信息 原书名:HTML and CSS:visual quickstart guide 作者: (美)Elizabeth Castro ...
- 《零基础学HTML5+CSS3(全彩版)》读书笔记
2019年1月31日星期四 1点 <零基础学HTML5+CSS3(全彩版)>开始全面学习 前提: 11月20日开始学Python,可能因为太累了,也可能遇到了瓶颈,进入了一个迷茫期,1月6 ...
- HTML5与CSS3基础教程(第7版) 高清PDF扫描版
HTML5与CSS3基础教程(第7版)试读不仅介绍了文本.图像.链接.列表.表格.表单.多媒体等网页元素,也介绍了如何为网页设计结构.布局,添加动态效果.格式化等形式,此外还涉及调试和发布.聚合和吸引 ...
- HTML5与CSS3基础教程(第8版) PDF扫描版
<HTML5与CSS3基础教程(第8版)>自第1版至今,一直是讲解HTML和CSS入门知识的经典畅销书,全面系统地阐述HTML5和CSS3基础知识以及实际运用技术,通过大量实例深入浅出地分 ...
- 【02】HTML5与CSS3基础教程(第8版)(全)
[02]HTML5与CSS3基础教程(第8版)(全) 共392页. (魔芋:大体上扫了一遍.没有什么新东西,都是入门的一些基础知识.) 已看完. [美]elizabeth cast ...
随机推荐
- S+ hidden tray with window start
官方论坛上有个帖子给出了答案: I forgot that this is supported in the code, but it requires a little editing of the ...
- python contextmananger装饰器与with
如果想自定义一个类或者函数使用with语句,除了在类中自己定义__enter__()方法和__exit__()方法外,还可以使用contextmananger装饰器. contextmananger装 ...
- locate包的安装
linux中locate命令可以快速定位我们需要查找的文件,但是在yum中,locate的安装包名为 mlocate(yum list | grep locate可以查看),安装方法: yum -y ...
- linux中与Oracle有关的内核参数详解
工作当中遇到oracle运行时CPU占用率达到90%以上,调小以下参数值后恢复正常. fs.file-max = 65536 net.core.rmem_default=262144 net.core ...
- 专业英语词汇(Java)
abstract (关键字) 抽象 ['.bstr.kt] access vt.访问,存取 ['.kses]‘(n.入口, ...
- 一行转多行 及多行转一行的 hive语句
注意 :|,: 是特殊符号,要用 "\\|", "\\;"来表示. 一行转多行 usertags 里面有很多项,每项之间以逗号分隔 create t ...
- Mysql 中json 相关函数的使用
1.JSON_LENGTH: select content from test1 ["1","2","3","4",&q ...
- mysql for update语句
我们都知道for update语句会锁住一张表,锁表的细节很多人却不太清楚,下面我们举例看下. 在表上我们有个索引,如下: 现在在我们通过索引store_id锁表: 我们再开一个客户端,还是锁住同一个 ...
- HTML的标签简介
1.标签的简介: <html>与</html>之间的文本描述网页<head>与</head>之间的标签用于定义文档的头部,他是所有的头部的文件<b ...
- org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[]
运行servlet程序报错: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Cat ...