HTML5学习

网站构成

  • 网站由网页组成,是承载各种应用的平台 
  • 用于展示特定内容的网页集合
  •  网页就是一个文件,通常是HTML格式,文件扩展名一般为.html或.htm,也可以是.asp、.aspx或.jsp等。网页存放在一台计算机中,而这台计算机必须是与互联网相连的。网页经由网址(URL)来识别和存取,当在浏览器输入网址后,该网页文件会被传送到计算机上,然后再通过浏览器解释网页内容,再展示到面前。
  • 在网站中,有一个网页比较特殊,当人们在浏览器地址栏中输入网站的网址后,会首先看到这个页面,通常被称为主页(或首页),首页类似图书中的目录,具有导航作用。
  • 如淘宝是一个网站,首页、详情页、购物车页、登录页等

 概念及组成

  • 万维网联盟(英文全称:World Wide Web Consortium,缩写为W3C)标准不是某一个标准,而是一系列标准的集合

组成

•• 解决了跨浏览器问题
  • 结构化标准语言( XHTML和XML【可扩展标记语言】)【可扩展超文本标记语言(缩写,XHTML)】
  • 作用:
  • 可以搭建页面结构,使页面出现文本、超链接、列表等内容
  • 表现标准语言 (CSS)【层叠样式表(英文全称:Cascading Style Sheets,缩写为CSS】
  • 用于美化网页,给页面添加背景、字体颜色、文本样式等
  • 行为标准 (包括对象模型(如W3C DOM英文全称:Document Object Model,缩写为DOM)、ECMAScript等)
  • 一种与浏览器,平台,语言的接口,使得开发者可以访问页面其他的标准组件
  • 给页面添加动态效果,比如图片轮播、Tab切换、文字滚动等

 HTML概念及发展史HTML

概念 

  • HTML称为超文本标记语言,是一种标识性的语言。由HTML命令组成的描述性文本,可以说明文字,图形、动画、声音、表格、链接等


发展

HTML 5作为最新版本,提供了一些新的元素和一些有趣的新特性,同时也建立了一些新的规则。这些元素、特性和规则的建立,提供了许多新的网页功能,如使用网页实现动态渲染图形、图表、图像和动画,以及不需要安装任何插件直接使用网页播放视频等。目前企业开发中也在增大使用HTML5的力度。 

每一个新版本都是对之前版本的扩充
每一个新版本基本都能兼容之前的版本

支持跨平台、跨设备
支持移动开发
 

 常见浏览器

1. IE浏览器 

 2. Firefox浏览器

3. Safari浏览器 

4. Opera浏览器 

5.Chrome浏览器

新特性

语义化表达
引入具有特定语义的结构标签,如<header>、< footer>、 <nav>等。
支持多媒体.
新增<audio>和<video>标签处理音频和视频文件。
离线和存储
HTMi 5提出I ocal Storage与Application Cache两大离线存储技术,能把Web应用相关
资源文件缓存到本地。
支持多线程: Web Workers让浏览器可以多线程处理后台任务而不阻塞用户界
面渲染。
通信:增强了通信能力,意味着增强了信息交互的实时性和网络游戏的顺畅性。
设备访问:增强了设备感知能力,使Web应用在电脑、pad、 手机上均能使用。
 

创建HTML网页 

常见编辑器 

Adobe Dreamweaver

  • 简称“DW”,集网页制作和管理网站于一身的所见即所得网页代码编辑器
  • 缺点在于效果难一致、代码难控制

  • WebStorm
    • 誉为“Web前端开发神器”、“最强大的HTML5编辑器”等
    • 缺点在于启动时耗CPU和内存
  • Sbulime Text
    • 具有漂亮的用户界面和强大的功能,如代码缩略图、插件等
    • 缺点在于收费闭源

  • Visual Studio Code
    • 针对于编写现代 Web 和云应用的跨平台源代码编辑器
    • 称其“比Sublime开源,比Webstorm更轻”

 HTML文档基本结构

  • HTML文档:<html></html>
  • 头部区域:<head></head>
  • 主体区域:<body></body>

 HTML基本语法

1标签不区分大小写

2允许属性值不使用引号

3允许部分属性值的属性省略

HTML5可以省略属性值的属性

属性

描述

checked

省略属性值后,等价于checked="checked"

readonly

省略属性值后,等价于readonly="readonly"

defer

省略属性值后,等价于defer="defer"

ismap

省略属性值后,等价于ismap="ismap"

nohref

省略属性值后,等价于nohref="nohref "

noshade

省略属性值后,等价于noshade="noshade"

nowrap

省略属性值后,等价于nowrap="nowrap"

selected

省略属性值后,等价于selected="selected"

disabled

省略属性值后,等价于disabled="disabled"

multiple

省略属性值后,等价于multiple="multiple"

noresize

省略属性值后,等价于noresize="noresize"

单标记  单标记也称空标记,是指用一个标记符号即可完整地描述某个功能的标记。

双标记   双标记也称体标记,是指由开始和结束两个标记符组成的标记。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>我的第一个网页</title>
</head>
<body>
    Hello World
</body>
</html>

  • 必须在首行定义文档类型
<!DOCTYPE html>
  •  文档的字符编码

HTML注释标记

<!-- 注释语句 -->

标记属性 

字体 字号 颜色 位置

<标记名 属性1="属性值1" 属性2="属性值2" > 内容 </标记名>

HTML5文档头部相关标记 

<title>标记用于定义HTML页面的标题,即给网页取一个名字,必须位于<head>标记之内。

<meta />标记用于定义页面的元信息,可重复出现在<head>头部标记

<head>中使用<link>标记引用外部文件,一个页面允许使用多个<link>标记引用多个外部文件。

<style>标记用于为HTML文档定义样式信息,位于<head>头部标记

<meta charset="UTF-8">
  • 理想视口
<meta name="viewport" content="width=device-width, initial-scale=1.0">
  • 文档标题

一个HTML文档只能含有一对<title></title>标记<title></title>之间的内容将显示在浏览器窗口的标题栏中。

<title>我的第一个网页</title>

meta定义页面元信息 

设置网页关键字   <meta name=“keywords” content=“JAVAphp" />

设置网页描述    <meta name=“description“ content=“IT培训教育”/>

设置网页作者   <meta name=“author” content=“张三" />

设置字符集    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

设置页面自动刷新与跳转  <meta http-equiv="refresh" content="10;url=http://www.itcast.cn" />

<link 属性="属性值" /> 

属性名

常用属性值

描述

href

URL

指定引用外部文档的地址

rel

stylesheet

指定当前文档与引用外部文档的关系,该属性值通常为stylesheet,表示定义一个外部样式表

type

text/css

引用外部文档的类型为CSS样式表

text/javascript

引用外部文档的类型为javascript脚本

<style 属性=”属性值”>样式内容</style> 

HTML中使用style标记时,常常定义其属性为type,相应的属性值为text/css,表示使用内嵌式CSS样式。

 掌握HTML基本标签的使用

 基本标签

标题标签 

  • 通过<h1>~ <h6>标签定义
    • <h1>标签的标题最大,<h6>标签的标题最小
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		  <h1>一级标题</h1>
		  <h2>二级标题</h2>
		  <h3>三级标题</h3>
		  <h4>四级标题</h4>
		  <h5>五级标题</h5>
		  <h6>六级标题</h6>
		
		</html>
	</body>
</html>

<hn align="对齐方式">标题文本</hn>  

  • left  设置标题文字左对齐(默认值)
  • center设置标题文字居中对齐
  • right设置标题文字右对齐

 段落标签

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		     <h1>北京欢迎你</h1>
		     <p>北京欢迎你,有梦想谁都了不起!</p>
		     <p>有勇气就会有奇迹。</p>
	</body>
</html>

 <p align="对齐方式">段落文本</p>

 换行标签

  • 通过<br>标签定义,属于空标签

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		   <h1>北京欢迎你</h1>
		       <p>
		           北京欢迎你,有梦想谁都了不起!<br>
		           有勇气就会有奇迹。<br>
		           北京欢迎你,为你开天辟地!<br>
		           流动中的魅力充满朝气。<br>
		           北京欢迎你,在太阳下分享呼吸!<br>
		           在黄土地刷新成绩。<br>
		       </p>
	</body>
</html>

 水平线标签

  • 通过<hr>标签定义,属于空标签

<hr 属性="属性值" />    <hr />单标记,在网页中输入一个<hr />,就添加了一条默认样式的水平线

<hr />标记的常用属性

属性名

含义

属性值

align

设置水平线的对齐方式

可选择leftrightcenter三种值,默认为center,居中对齐

size

设置水平线的粗细

以像素为单位,默认为2像素

color

设置水平线的颜色

可用颜色名称、十六进制#RGBrgb(r,g,b)

width

设置水平线的宽度

可以是确定的像素值,也可以是浏览器窗口的百分比,默认为100%

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		  <h1>北京欢迎你</h1>
		     <hr>
		     <p>
		         北京欢迎你,有梦想谁都了不起!<br>
		         有勇气就会有奇迹。<br>
		         北京欢迎你,为你开天辟地!<br>
		         流动中的魅力充满朝气。<br>
		         北京欢迎你,在太阳下分享呼吸!<br>
		         在黄土地刷新成绩。<br>
		     </p>
	</body>
</html>

文本格式化标记

标记

显示效果

<b></b><strong></strong>

文字以粗体方式显示(XHTML推荐使用strong

<i></i><em></em>

文字以斜体方式显示(XHTML推荐使用em

<s></s><del></del>

文字以加删除线方式显示(XHTML推荐使用del

<u></u><ins></ins>

文字以加下划线方式显示(XHTML不赞成使用u

 特殊字符标记

特殊字符

描述

字符的代码

空格符

&nbsp;

小于号

&lt;

大于号

&gt;

&

和号

&amp;

人民币

&yen;

©

版权

&copy;

®

注册商标

&reg;

°

摄氏度

&deg;

±

正负号

&plusmn;

×

乘号

&times;

÷

除号

&divide;

²

平方2(上标2

&sup2;

³

立方3(上标3

&sup3;

 图像标签

常见的图像格式 

  • JPEG格式
    • 压缩率高、十分标准化
  • GIF格式
    • 可构成简单的动画
  • PNG格式
    • 可以存储透明图片

 基本语法

  • 由<img> 标签定义,是空标签,只包含属性,没有闭合标签

<img src="url"  alt="text"  title="text"  width="x"  height="y">
  • src属性:表示图像的地址
  • alt属性:表示图像的替代文字
  • title属性:表示鼠标悬停在图像上时的提示文字
  • width属性:用于设置图像的宽度,单位是像素
  • height属性:用于设置图像的高度,单位是像素
  • border属性:为图像添加边框、设置边框的宽度。边框颜色的调整仅仅通过HTML属性是不能够实现的。

  • vspace属性:调整图像的垂直边距

  • hspace属性:水平边距

  • align属性:图像的对齐属性align用于调整图像的位置

实际工作中,通常新建一个文件夹专门用于存放图像文件

相对路径   相对路径不带有盘符,通常是以HTML网页文件为起点,通过层级关系描述目标图像的位置。

绝对路径   绝对路径一般是指带有盘符的路径,例如完整的网络地址 “http://www.itcast.cn/images/logo.gif”。

图像文件和html文件位于同一文件夹:  只需输入图像文件的名称即可,<img src=“logo.gif” />

图像文件位于html文件的下一级文件夹:  输入文件夹名和文件名,之间用“/”隔开,<img src="img/img01/logo.gif" />

图像文件位于html文件的上一级文件夹: 在文件名之前加入“../” ,如果是上两级,则需要使用 “../ ../”,以此类推,<img src="../logo.gif" />

无错误使用 

<img src="images/1.jpg" alt="这是一张猫咪图片" title="这只小猫名字叫可乐" width="300" height="300">

 修改文件路径之后。

  • 由<a> 标签定义,用于跳转到新的文档或者当前文档中的某个部分
<a href="url" >链接文本或图像</a>

 在上述语法中,href属性表示链接的目标

<a href="跳转目标"

     target="目标窗口的弹出方式">      

     文本或图像

</a>

href  用于指定链接目标的url地址,当为<a>标记应用href属性时,它就具有了超链接的功能。

target  用于指定链接页面的打开方式,其取值有_self_blank两种,其中_self为默认值,意为在原窗口中打开,_blank为在新窗口中打开。

案例 

<a href="a.html">点我跳转至A页面</a>

 

为了提高信息的检索速度

 HTML语言提供了一种特殊的链接——锚点链接,通过创建锚点链接,用户能够快速定位目标内容

创建锚点链接分为两步

使用<a href="#id">链接文本</a>创建链接文本

使用相应的id标注跳转目标的位置

列表元素

HTML语言提供了3常用的列表,分别为无序列表有序列表定义列表

网页中最常用的列表,其各个列表项之间没有顺序级别之分,通常是并列的。

有排列顺序的列表,其各个列表项按照一定的顺序排列

于对术语或名词进行解释描述与无序和有序列表不同,定义列表的列表项前没有任何项目符号。

<ul>

    <li>列表项1</li>

    <li>列表项2</li>

    <li>列表项3</li>

......

</ul>

每对<ul></ul>中至少应包含一对<li></li>。

<li></li>标记用于描述具体的列表项

<ul></ul>标记用于定义无序列表

<ol>

    <li>列表项1</li>

    <li>列表项2</li>

    <li>列表项3</li>

......

</ol>

<ol></ol>标记用于定义无序列表

<li></li>标记用于描述具体的列表项

每对<ol></ol>至少应包一对<li></li>

定义列表常用于图文混排,其中<dt></dt>标记中插入图片,<dd></dd>标记中放入对图片解释说明的文字。

<dl>

    <dt>名词1</dt>

    <dd>名词1解释1</dd>

    <dd>名词1解释2</dd>

    ...

    <dt>名词2</dt>

    <dd>名词2解释1</dd>

    <dd>名词2解释2</dd>

    ...

</dl>

<dl></dl>标记用于指定定义列表

<dt></dt>标记用于指定术语名词

<dd></dd>标记用于对名词进行解释和描述

 语义化标签概述

(1)语义化标签概述 

语义化标签是指根据内容的结构化,选择合适的标签进行开发。其便于开发者阅读和写出更优雅的代码,同时可以让浏览器的爬虫和机器很好地解析。 

(2)语义化标签种类 

在HTML5中,语义化标签有header、nav、article、aside和footer等,其各个作用如下: 

  • header:页面或页面中某一个区块的页眉,通常是一些引导和导航信息。
  • nav :可以作为页面导航的链接组。
  • article:页面中的一个内容区块,通常由内容及其标题组成。
  • aside:非正文的内容,与页面的主要内容是分开的,被删除而不会影响到网页的内容。
  • footer:页面或页面中某一个区块的脚注

  • 以菜鸟教程首页为例,在划分页面结构时,为了区分各个模块,使页面更具有语义化,开发人员通常需要使用语义化标签

HTML5中的header元素是一种具有引导和导航作用的结构元素,该元素可以包含所有通常放在页面头部的内容。

<header>

   <h1>网页主题</h1>

  ...

</header>

nav元素用于定义导航链接,是HTML5新增的元素,该元素可以将具有导航性质的链接归纳在一个区域中,使页面元素的语义更加明确

<nav>

    <ul>

        <li><a href="#">首页</li>

        <li><a href="#">公司概况</li>

        <li><a href="#">产品展示</li>

        <li><a href="#">联系我们</li>

    </ul>

</nav>

article元素代表文档、页面或者应用程序中与上下文不相关的独立部分,该元素经常被用于定义一篇日志、一条新闻用户评论等。

例如下面案例就是article元素用法演示

 aside元素用来定义当前页面或者文章的附属信息部分,它可以包含与当前页面或主要内容相关的引用、侧边栏、广告、导航条等其他类似的有别于主要内容的部分。

被包含在article元素内作为主要内容的附属信息

article 元素 之外使用,作为页面或站点全局的附属信息部分。
section元素 用于对网站或应用程序中页面上的内容进行分块,一个 section 元素 通常由 内容 标题 组成。
Ø 不要将 section 元素 用作设置样式的 页面容器 ,那是 div 的特性。
Ø 如果 article 元素、 aside 元素 nav 元素 更符合使用条件,那么不要使用 section 元素
Ø 没有标题的内容区块不要使用 section 元素 定义。
footer元素 用于定义一个 页面或者区域的底部 ,它可以包含所有通常放在页面底部的内容。

<article>

  文章内容

  <footer>

  文章分页列表

  </footer>

</article>

<footer>

  页面底部

</footer>

 分组元素用于对页面中的内容进行分组。HTML5中涉及到3个与分组有关的元素,分别是figure元素、figcaption元素hgroup元素

details元素用于描述文档或文档某个部分的细节。summary元素经常与details 元素配合使用,作为details 元素的第一个子元素,用于为details定义标题。标题是可见的,当用户点击标题时,会显示或隐藏details中的其他内容。

progress元素用于定义一个正在完成的进度条,这个进度可以是不确定的,只是表示进度正在进行,但是不清楚还有多少工作量没有完成。

meter元素用于表示指定范围内的数值。

属性

说明

high

定义度量的值位于哪个点被界定为高的值。

low

定义度量的值位于哪个点被界定为低的值。

max

定义最大值,默认值是 1

min

定义最小值,默认值是 0

optimum

定义什么样的度量值是最佳的值。如果该值高于 high属性,则意味着值越高越好。如果该值低于low属性的值,则意味着值越低越好。

value

定义度量的值。

 为了使HTML页面中的文本内容更加形象生动,需要使用一些特殊的元素来突出文本之间的层次关系,这样的元素被称为层次语义元素

time元素用于定义时间日期,可以代表24小时中的某一时间。time元素不会在浏览器中呈现任何特殊效果,但是该元素以机器可读的方式对日期时间进行编码。这样,用户能够将生日提醒其他事件添加到日程表中,搜索引擎也能够生成更智能的搜索结果

time元素常用属性值

datetime:用于定义相应的时间或日期。

pubdate:用于定义time元素中的日期/时间是文档(或article元素)的发布日期。

mark元素的主要功能是在文本中高亮显示某些字符,以引起用户注意。该元素的用法与emstrong有相似之处,但是使用mark元素在突出显示样式时更随意灵活。

cite元素可以创建一个引用标记,用于对文档参考文献的引用说明,一旦在文档中使用了该标记,被标记的文档内容将以斜体的样式展示在页面中,以区别于段落中的其他字符。

figure元素的内容应该与主内容相关,但如果被删除,也不会对文档流产生影响。figcaption元素用于为figure元素组添加标题,一个figure元素内最多允许使用一个figcaption元素,该元素应该放在figure元素的第一个或者最后一个子元素的位置。

hgroup元素用于将多个标题(主标题和副标题或者子标题)组成一个标题组,通常它与h1~h6元素组合使用。通常,将hgroup元素放在header元素中。

如果只有一个标题元素不建议使用hgroup元素

当出现一个或者一个以上的 标题与元素 时,推荐使用 hgroup 元素 作为标题元素。
当一个标题包含 副标题 section 或者 article 元素 时,建议将 hgroup 元素 标题 相关元素存放到 header 元素 容器中。
全局属性是指在任何元素中都可以使用的属性,在 HTML5 中常用的的全局属性有 draggable hidden spellcheck contenteditable
contenteditable 属性 规定是否可 编辑元素的内容 ,但是前提是该元素必须可以 获得鼠标焦点 并且其内容不是只读的。
draggable 属性 用来定义元素是否可以拖动,该属性有两个值: true false ,默认为 false ,当值为 true 时表示元素选中之后可以进行拖动操作,否则不能拖动。
  • 在HTML5中,contentEditable属性用于是否允许用户编辑内容,若不添加contenteditable属性,就是一个不可编辑的p标签,

 hidden属性

HTML5中,大多数元素都支持hidden属性,该属性有两个属性值:truefalse。当hidden属性取值为true时,元素将会被隐藏,反之则会显示。元素中的内容是通过浏览器创建的,页面装载后允许使用JavaScript脚本将该属性取消,取消后该元素变为可见状态,同时元素中的内容也及时显示出来。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body> 
		<h1>我是标题1</h1>
		<h2>我是标题2</h2>
		<h3 hidden="hidden">我是标题3</h3>
		<h4>我是标题4</h4>
		<h5>我是标题5</h5>
		<h6>我是标题6</h6>
	</body>
</html>

spellcheck属性

 spellcheck属性主要针对于input元素textarea文本输入框,对用户输入的文本内容进行拼写和语法检查。spellcheck属性有两个值true(默认值)和false,值为true时检测输入框中的值,反之不检测。

第一个<p>标签没有设置spellcheck属性,第二个<p>标签的spellcheck属性设置为true

会发现当输入一样的内容时,第二个p标签会对编辑的内容进行拼写或语法检查(即在错误的词下面添加红色波浪线),效果如下图示。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body> 

      <p contenteditable="true">这是可编辑的段落,可以试着编辑文本</p>
      <p contenteditable="true" spellcheck="true">这是可编辑的段落,可以试着编辑文本</p>

	</body>
</html>

 多媒体的应用

音频 

在HTML5中,<audio>标签用于音频播放,语法如下 

< audio src="音频路径"> </ audio >

  • controls:用于向用户显示控件,比如播放按钮
  • autoplay:表示音频在就绪后马上播放,即自动播放
  • loop:表示当音频结束时重新开始播放,即循环播放

音频使用 

  • 使用<audio>标签在网页中播放音乐,并要求音乐需要显示控件,并能够循环播放

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body> 
          <audio src="儿歌%20-%20好孩子要诚实.mp3" controls loop></audio>
	</body>
</html>

  • 在HTML5中,<video>标签用于视频播放,语法如下:

< video src="视频路径"> </ video >
  • controls:用于向用户显示控件,比如播放按钮
  • autoplay:表示视频在就绪后马上播放,即自动播放
  • loop:表示当视频结束时重新开始播放,即循环播放
  • width:设置视频播放器的宽度
  • height:设置视频播放器的高度
  • <video>标签在网页中播放视频,并要求视频宽高为500像素,且需要显示控件,并能够循环播放

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body> 
        
         <video src="绿叶视频.mp4" controls loop width="500" height="500"></video>     
	</body>
</html>

特殊字符与注释

标签基本语法规范 

  • 所有的标签都包含在“<”和“>”起止标识符中,从而构成一个标签,如<p>
  • 在HTML文档中,大多数元素都有开始标签和结束标签,在开始标签和结束标签之间包含的是元素主体,如<body>元素主体</body>
  • 开始标签中包含元素的名称以及可选属性,结束标签以反斜杠开始,然后附加上元素名称,如段落标签:
<p>这是一个段落</p>
  •  标签可以互相嵌套,形成文档结构,如:

<p><a></a></p>
  • 元素的属性包含属性名称和属性值两部分,中间通过等号进行连接,多个属性之间用空格分隔,属性与元素名称之间也是用空格分隔,如:
<img src="url" alt="text" title="text" width="x"height="y">
  • 少数元素的属性也可能不包含属性值,仅有一个属性名称 

<audio src="song.ogg" controls loop></audio>
  • 属性是可选的,元素包含多少个属性,也不是确定的

大小写规范 

  • 在HTML中,元素名和属性名使用大写或小写浏览器都能够解析,但是通常更推荐小写,原因如下:
    • 混合了大小写的风格是非常糟糕的
    • 实际开发中,开发人员通常使用小写
    • 小写风格看起来更加清爽
    • 小写字母容易编写

 驼峰式命名法

  • 若某个属性单词较长,一般采用驼峰式命名法,例如:

<section>
	<p className="menu">这是一个段落。</p>
</section>

缩进和空行

  • 为了代码美观,通常在编写代码时要保持树形结构

  • 可以为每个逻辑功能块添加空行,这样更易于阅读

注释 

<!-- 这是注释 -->

字符实体

  • 在HTML中,如需显示大于号,必须写为“>”;显示小于号,必须写为“<”

<p>如果时间&gt;晚上6点,就坐车回家</p>
<p>如果时间&lt;早上7点,就走路去上学</p>

常用字符实体

 行内元素

概述及使用 

  • 行内元素由内容撑开宽度,左右都是行内元素可以排在一行显示。所学的标签中,行内元素有:图像标签、超链接标签
  • 若页面中有多个图像标签或超链接标签,代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>行内元素</title>
</head>
<body>
    <img src="images/1.jpg" alt="">
    <img src="images/1.jpg" alt="">
    <img src="images/1.jpg" alt="">
    <a href="#">我是超链接</a>
    <a href="#">我是超链接</a>
</body>
</html>

 块级元素

  • 块级元素的内容无论多少,该元素独占一行。所学的标签中,块级元素有:段落标签、标题标签、语义化标签

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>块级元素</title>
</head>
<body>
    <h2>我是标题1</h2>
    <p>
        段落1
        <a href="#">超链接1</a>
        <a href="#">超链接2</a>
    </p>
    <h2>我是标题2</h2>
    <p>段落2</p>
    <p>段落3</p>
    <h2>我是标题3</h2>
    <p>段落4</p>
</body>
</html>

 元素区别

行内元素和块级元素的区别 

  • 区别可以从两点来划分,在内容上:
    • 一般情况下,行内元素只能包含数据和其他行内元素
    • 块级元素可以包含行内元素和其他块级元素
  • 格式上:
    • 默认情况下,行内元素不会以新行开始,而块级元素会新起一行

 CSS3选择器

CSS3中新增的多种选择器,使用它可以大幅度提高开发人员书写和修改样式表的效率。

属性选择器可以根据元素的属性及属性值选择元素CSS3中新增了3种属性选择器

E[att^=value]

E[att$=value]

E[att*=value]

E[att^=value] 属性选择器是指选择名称为E的标记,且该标记定义了att属性att属性值包含前缀为value的子字符串。

E是可以省略的,如果省略则表示可以匹配满足条件的任意元素。

E[att$=value] 属性选择器是指选择名称为E的标记,且该标记定义了att属性att属性值包含后缀为value的子字符串。与E[att^=value]选择器一样,E元素可以省略,如果省略则表示可以匹配满足条件的任意元素。

div[id$=section] 

表示匹配包含id属性,且id属性值是以“section”字符串结尾的div元素。

E[att*=value]选择器用于选择名称为E的标记,且该标记定义了att属性att属性值包含value子字符串。该选择器与前两个选择器一样,E元素也可以省略,如果省略则表示可以匹配满足条件的任意元素。

div[id*=section]

表示匹配包含id属性,且id属性值包含section”字符串div元素。

子代选择器主要用来选择某个元素的第一级子元素

希望选择只作为 h1 元素子元素的 strong 元素,可以这样写:h1 > strong

兄弟选择器用来选择与某元素位于同一个父元素之中,且位于该元素之后的兄弟元素

临近兄弟选择器 使用加号+”来链接前后两个选择器。选择器中的两个元素有同一个父亲,而且第二个元素必须紧跟第一个元素。

普通兄弟选择器  使用 ~”来链接前后两个选择器。选择器中的两个元素有同一个父亲,但第二个元素不必紧跟第一个元素。 

结构化伪类选择器

Ø :root 选择器
Ø :not 选择器
Ø :only-child 选择器
Ø :first-child :last-child 选择器
Ø :nth-child(n) :nth-last-child(n) 选择器
Ø :nth-of-type(n) :nth-last-of-type(n) 选择器
Ø :empty 选择器
Ø :target 选择器

:root选择器

:root选择器用于匹配文档根元素,在HTML中,根元素始终是html元素。也就是说使用:root选择器”定义的样式,对所有页面元素都生效。对于不需要该样式的元素,可以单独设置样式进行覆盖。

:not选择器

如果对某个结构元素使用样式,但是想排除这个结构元素下面的子结构元素,让它不使用这个样式,可以使用:not选择器

:only-child 选择器

:only-child 选择器用于匹配属于某父元素的唯一子元素的元素,也就是说,如果某个父元素仅有一个子元素,则使用:only-child 选择器”可以选择这个子元素。

:first-child:last-child选择器

:first-child选择器:last-child选择器分别用于为父元素中的第一个或者最后一个子元素设置样式。

:nth-child(n):nth-last-child(n)选择器

使用:first-child选择器:last-child选择器可以选择某个父元素中第一个最后一个子元素,但是如果用户想要选择2个或倒数第2个子元素,这两个选择器就不起作用了。为此,CSS3引入了:nth-child(n):nth-last-child(n)选择器,它们是:first-child选择器和:last-child选择器的扩展。

:nth-of-type(n):nth-last-of-type(n)选择器

:nth-of-type(n):nth-last-of-type(n)选择器用于匹配属于父元素的特定类型的n 个子元素倒数第n个子元素

:empty选择器

:empty选择器用来选择没有子元素或文本内容为空的所有元素。

:target选择器

:target选择器用于为页面中的某个target元素(该元素的id被当做页面中的超链接来使用)指定样式。只有用户单击了页面中的超链接,并且跳转到target元素后,:target选择器所设置的样式才会起作用。

所谓伪元素选择器,是针对CSS中已经定义好的伪元素使用的选择器。CSS中常用的伪元素选择器有:before伪元素选择器和:after伪元素选择器

:before选择器

:before伪元素选择器用于在被选元素的内容前面插入内容,必须配合content属性来指定要插入的具体内容。

:after选择器

:after伪元素选择器用于在某个元素之后插入一些内容,使用方法与:before选择器相同。

链接伪类

定义超链接时,为了提高用户体验,经常需要为超链接指定不同的状态,使得超链接在点击前、点击后和鼠标悬停时的样式不同。

CSS通过链接伪类可以实现不同的链接状态

超链接标记<a>伪类

超链接标记<a>的伪类

含义

a:link{ CSS样式规则; }

未访问时超链接的状态

a:visited{ CSS样式规则; }

访问后超链接的状态

a:hover{ CSS样式规则; }

鼠标经过、悬停时超链接的状态

a:active{ CSS样式规则; }

鼠标点击不动时超链接的状态

<元素>:

before

{

  content:文字/url();

}

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

撸码的xiao摩羯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值