HTML知识整理(一)

HTML知识整理(一)

一.第一行:!DOCTYPE html

​ html文件最开头放一句<!DOCTYPE html> 非常非常重要。

​ 如果写网页时没有加上这句话,就有可能出现某一个页面在IE7和8,Chrome,firefox等下正常,但是在IE9下显示有问题。而解决方法就是给页面添加<!DOCTYPE html>

下面简洁扼要的说一下DOCTYPE的作用和用法。

作用

简要解释

​ 让所有浏览器都按照W3C的标准解析渲染你的页面

详细解释

​ 声明文档的解析类型(document.compatMode),避免浏览器的怪异模式
document.compatMode的使用,感觉这个对于我们开发兼容性的web页面还是很有帮助,IE对盒模型的渲染在 Standards Mode和Quirks Mode是有很大差别的,document.compatMode就是用来判断当前浏览器采用的渲染方式。详细的document.compatMode介绍可以到下面的链接中翻阅:

https://www.cnblogs.com/fullhouse/archive/2012/01/17/2324706.html

​ BackCompat:怪异模式,浏览器使用自己的怪异模式解析渲染页面。
​ CSS1Compat:标准模式,浏览器使用W3C的标准解析渲染页面。
这个属性会被浏览器识别并使用,但是如果你的页面没有DOCTYPE的声明,那么compatMode默认就是BackCompat。如果浏览器按照自己的方式解析渲染页面,那么,在不同的浏览器就会显示不同的样式
​ 如果你的页面添加了<!DOCTYPE html>那么,那么就等同于开启了标准模式,那么浏览器就得老老实实的按照W3C的标准解析渲染页面,这样一来,你的页面在所有的浏览器里显示的就都是一个样子了。

​ 这就是<!DOCTYPE html>的作用。

另外简单提一下XHTML规范:

      1. html中不区分大小写,一般使用大写
      2. html中注释不能嵌套
      3. 标签要么成对出现,要么是自结束标签
      4. html标签中的属性必须有值,且值必须加引号

二.Head标签

Head标签部分内容引用自

https://www.cnblogs.com/belongs-to-qinghua/p/10950535.html

我们都知道,HTML的标签可以分为很多种,head 里面的我们称为元信息类标签,诸如title、meta、style、link、base、script这些,他们用来描述文档的一些基本信息。

2.1. title 标签
  • 可定义文档的标题。
  • <title> 标签是 <head> 标签中唯一要求包含的东西。
  • 浏览器会以特殊的方式来使用标题,并且通常把它放置在浏览器窗口的标题栏或状态栏上。同样,当把文档加入用户的链接列表或者收藏夹或书签列表时,标题将成为该文档链接的默认名称。
2.2. meta 标签

meta标签可以设置网页的关键字和描述,

而且请求重定向可以跳转到某网页,例如:

<meta http-equiv="refresh" content="5;url=http://www.baidu.com" />
  • 元素可提供有关页面的元信息(meta-information),比如针对搜索引擎和更新频度的描述和关键词。
  • <meta> 标签永远位于 head 元素内部。元数据总是以名称/值的形式被成对传递的。
  • 设置网页编码:防止网页出现乱码<meta charset=“UTF-8”>

必须的属性:

img

可选的属性:

img

  • name 属性提供了名称/值对中的名称。HTML 和 XHTML 标签都没有指定任何预先定义的 <meta> 名称。通常情况下,您可以自由使用对自己和源文档的读者来说富有意义的名称。
    • “keywords” 是一个经常被用到的名称。它为文档定义了一组关键字。某些搜索引擎在遇到这些关键字时,会用这些关键字对文档进行分类。
    • “description” 它为文档定义了描述信息。比如用户百度搜索“京东”是就会显示京东网站的描述信息。
    • 如果没有提供 name 属性,那么名称/值对中的名称会采用 http-equiv 属性的值。

img

  • http-equiv 属性为名称/值对提供了名称。并指示服务器在发送实际的文档之前先在要传送给浏览器的 MIME 文档头部包含名称/值对。
    • 当服务器向浏览器发送文档时,会先发送许多名称/值对。
    • 所有服务器都至少要发送一个:content-type:text/html。这将告诉浏览器准备接受一个 HTML 文档。
    • 只有浏览器可以接受这些附加的头部字段,并能以适当的方式使用它们时,这些字段才有意义。
    • 使用带有 http-equiv 属性的 <meta> 标签时,服务器将把名称/值对添加到发送给浏览器的内容头部。例如:
<meta http-equiv="charset" content="iso-8859-1">
<meta http-equiv="expires" content="31 Dec 2008">
// 这样发送到浏览器的头部就应该包含:
content-type: text/html
charset:iso-8859-1
expires:31 Dec 2008

  • content 属性提供了名称/值对中的值。

    • 该值可以是任何有效的字符串。
    • content 属性始终要和 name 属性或 http-equiv 属性一起使用。
  • scheme 属性用于指定要用来翻译属性值的方案。

    • 此方案应该在由 <head> 标签的 profile 属性指定的概况文件中进行了定义。
2.3. style 标签
  • 标签用于为 HTML 文档定义样式信息。
  • 在 style 中规定在浏览器中如何呈现 HTML 文档。
  • type 属性是必需的,定义 style 元素的内容。唯一可能的值是 “text/css”。
  • style 元素位于 head 部分中。
  • 如需链接外部样式表,请使用 <link> 标签。
<style type="text/css">  
    h1 {<b>    color:red<br>  } 
    p {<b`>    color:blue<br>  }
</style>
2.4. link 标签

link标签常用的场景有两种:作为网页图标标签;链接外部CSS

  • ref属性:规定当前文档与被链接文档之间的关系
  • href属性:规定被链接文档的位置
  • type属性:规定被链接文档的 MIME 类型(“Multipurpose Internet Mail Extensions” 多用途互联网邮件扩展)
2.4.1 作为网页图标标签
<link rel="icon" href="favicon.ico">
2.4.2 链接外部CSS
<link rel="stylesheet" type="text/css" href="css/base.css">

扩展:

​ 样式一共有三种使用方法:

​ 1.外部样式表

​ 当样式需要被应用到很多页面的时候,外部样式表将是理想的选择。使用外部样式表,你就可以通过更改一个文件来改变整个站点的外观。

<head>
<link rel="stylesheet" type="text/css" href="mystyle.css">
</head>

​ 2.内部样式表

​ 当单个文件需要特别样式时,就可以使用内部样式表。你可以在 head 部分通过 <style> 标签定义内部样式表。

<head>

<style type="text/css">
body {background-color: red}
p {margin-left: 20px}
</style>
</head>

​ 3.内联样式

​ 当特殊的样式需要应用到个别元素时,就可以使用内联样式。使用内联样式的方法是在相关的标签中使用样式属性。样式属性可以包含任何 CSS 属性。以下实例显示出如何改变段落的颜色和左外边距。

<p style="color: red; margin-left: 20px">
This is a paragraph
</p>
2.5. base 标签

标签为页面上的所有链接规定默认地址或默认目标。通常情况下,浏览器会从当前文档的 URL 中提取相应的元素来填写相对 URL 中的空白。使用 <base> 标签可以改变这一点。浏览器随后将不再使用当前文档的 URL,而使用指定的基本 URL 来解析所有的相对 URL。这其中包括<a>、<img>、<link>、<form> 标签中的 URL。

必选属性:

img

可选属性:

img

2.6. script 标签
  • 用于定义客户端脚本,比如 JavaScript。
  • script 元素既可以包含脚本语句,也可以通过 src 属性指向外部脚本文件。
  • 必需的 type 属性规定脚本的 MIME 类型。
  • JavaScript 的常见应用时图像操作、表单验证以及动态内容更新。
  • 假如此元素内部的代码没有位于某个函数中,那么这些代码会在页面被加载时被立即执行。<frameset> 标签之后的脚本会被忽略。

必选属性:

img

可选属性:

img

引入外部js文件:

<script src="js/exercise.js"></script>

编写内部js代码:

<script> 
    var num = 7; 
    var sum = 0;  
    while(num<117) {    
        if(num%3==0&&num%2==0) {      
            sum +=num;        
            num++;  
        }  
        document.write('7到117之间所有能被3整除的偶数的和为:'+sum);</script>

三.body标签

3.1 标题标签<h1~h6>

标题标签一共有六级标签,h1-h6,在标题标签中,文字的大小并不是我们关心的一点,因为大小可以在标签的属性中改变,而我们关心的是标签的语义,我们使用的标签都是语义化标签。

​ 六级标题中,h1最重要,页面中一般只有一个h1标签。

​ 一般页面中标题标签只是用h1,h2,h3。(h3以下的基本不用)

3.2 段落标签<P>

​ 段落标签,表示内容中的一个自然段
​ 在html中,字符间的空格和回车只会当成一个空格解析。
​ (br标签来表示换行。 hr可以生成一个水平线。)

 <p> 第一段第一行<br /><hr />第二行</p>
	<p> 第二段</p>
3.3 需要转义才可以使用的部分字符

​ “ < >” 这样的符号必须通过转译才可以使用

实体 & 实体的名字;
< &lt;

​ > &gt;
​ 空格 &nbsp;
​ 版权符号 &copy;

    <p>

        a<b>c      </b>
        a&lt;b&gt;c
        空&nbsp;</p>
3.4 图片标签Img<img>

使用img标签来向网页中引入一个外部图片
标签 属性:
src:设置一个外部图片路径 D:\1537705655682.jpg
alt:可以当图片不能显示时,对图片的描述,搜索引擎通过alt属性识别不同的图片
width,height:可以用来修改图片的高度和宽度,纵横比不变

 <img src=" D:\1537705655682.jpg" alt=" 实验图片" />
3.5 内联框架<iframe>

使用内联框架可以引入一个外部页面
开发中不建议使用内联框架
属性:
src:外部路径
width,height,name

  <iframe> src="xinjian.html"</iframe>
3.6 超链接<a>

​ 超链接,可以让我们从一个页面跳转到另一个页面
1. 使用a标签来创建一个超链接
2. 链接地址设置为#,点击超链接后会自动跳转到当前页面的顶部
3. 可以在内联框架中打开超链接,将target命名为内联框架的名字name即可
4. 属性:
​ href:指向我们链接跳转的目标地址
​ target:指定打开链接的位置,target="_blank就会新打开一个网页
name 属性规定锚(anchor)的名称,可以实现页面内的跳转,不需要滚动条

<a href="http://www.baidu.com " target="_blank">跳转百度 </a>

<!--
  发送电子邮件的超链接, 点击之后可以打开我们计算机中默认的邮件软件    
-->
<a href="mailto:1220614922@qq.com"> 联系我们</a>
3.7 不赞成使用的标签和属性

​ 在 HTML 4 中,有若干的标签和属性是被废弃的。被废弃(Deprecated)的意思是在未来版本的 HTML 和 XHTML 中将不支持这些标签和属性。

​ 这里传达的信息很明确:请避免使用这些被废弃的标签和属性!

标签描述
<center>定义居中的内容。
<font> 和 <basefont>定义 HTML 字体。
<s> 和 <strike>定义删除线文本
<u>定义下划线文本
属性描述
align定义文本的对齐方式
bgcolor定义背景颜色
color定义文本颜色

1.background-color 属性为元素定义了背景颜色;而style属性淘汰了**“旧的”bgcolor属性**

2.font-family、color 以及 font-size 属性分别定义元素中文本的字体系列、颜色和字体尺寸,style 属性淘汰了旧的 <font> 标签

3.text-align 属性规定了元素中文本的水平对齐方式,style 属性淘汰了旧的 “align” 属性

3.8 表格标签<table>

​ 表格由<table> 标签来定义。每个表格均有若干行(由 <tr> 标签定义),每行被分割为若干单元格(由 <td> 标签定义)。字母 td 指表格数据(table data),即数据单元格的内容。数据单元格可以包含文本、图片、列表、段落、表单、水平线、表格等等。

​ 例如:

<table border="1">
<tr>
<td>row 1, cell 1</td>
<td>row 1, cell 2</td>
</tr>
<tr>
<td>row 2, cell 1</td>
<td>row 2, cell 2</td>
</tr>
</table>

在浏览器下显示为

row 1, cell 1row 1, cell 2
row 2, cell 1row 2, cell 2

表格的边框

​ 如果不定义边框属性,表格将不显示边框。有时这很有用,但是大多数时候,我们希望显示边框。

​ 使用边框属性来显示一个带有边框的表格:

<table border="1">
<tr>
<td>Row 1, cell 1</td>
<td>Row 1, cell 2</td>
</tr>
</table>

表格的表头

​ 表格的表头使用 <th> 标签进行定义。

​ 大多数浏览器会把表头显示为粗体居中的文本:

<table border="1">
<tr>
<th>Heading</th>
<th>Another Heading</th>
</tr>
<tr>
<td>row 1, cell 1</td>
<td>row 1, cell 2</td>
</tr>
<tr>
<td>row 2, cell 1</td>
<td>row 2, cell 2</td>
</tr>
</table>

在浏览器显示如下:

HeadingAnother Heading
row 1, cell 1row 1, cell 2
row 2, cell 1row 2, cell 2

表格里的标签

表格描述
<table>定义表格
<caption>定义表格标题。
<th>定义表格的表头。
<tr>定义表格的行。
<td>定义表格单元。
<thead>定义表格的页眉(长表格)。
<tbody>定义表格的主体(长表格)。
<tfoot>定义表格的页脚(长表格)。
<col>定义用于表格列的属性。
<colgroup>定义表格列的组。

tips: 有一些表格非常长,分为头部,主题,底部(thead tbody tfoot)分别代表三个部分,都是table的子标签,直接写到table中,tr写在这些标签当中。

​ 如果表格中没有写tbody,浏览器会自动加上tbody,并将所有tr放在tbody中,通过table > tr (父标签访问子标签的形式)无法选中tr 因为table 的子元素是tbody tbody的子元素才是tr

3.9 列表标签

​ html中创建列表有无序列表,有序列表,定义列表三种。

无序列表

无序列表是一个项目的列表,此列项目使用粗体圆点(典型的小黑圆圈)进行标记。

无序列表始于 <ul> 标签。每个列表项始于 <li>。

<ul>
<li>Coffee</li>
<li>Milk</li>
</ul>

浏览器显示如下:

  • Coffee
  • Milk

列表项内部可以使用段落、换行符、图片、链接以及其他列表等等。

有序列表

同样,有序列表也是一列项目,列表项目使用数字进行标记。

有序列表始于 <ol> 标签。每个列表项始于 <li> 标签。

<ol>
<li>Coffee</li>
<li>Milk</li>
</ol>

浏览器显示如下:

  1. Coffee
  2. Milk

列表项内部可以使用段落、换行符、图片、链接以及其他列表等等。

定义列表

自定义列表不仅仅是一列项目,而是项目及其注释的组合。

自定义列表以 <dl> 标签开始。每个自定义列表项以 <dt> 开始。每个自定义列表项的定义以 <dd> 开始。

<dl>
<dt>Coffee</dt>
<dd>Black hot drink</dd>
<dt>Milk</dt>
<dd>White cold drink</dd>
</dl>

浏览器显示如下:

  • Coffee

    Black hot drink

  • Milk

    White cold drink

定义列表的列表项内部可以使用段落、换行符、图片、链接以及其他列表等等。

三.HTML格式化

文本格式化
标签描述
<b>定义粗体文本。
<big>定义大号字。
<em>定义着重文字。
<i>定义斜体字。
<small>定义小号字。
<strong>定义加重语气。
<sub>定义下标字。
<sup>定义上标字。
<ins>定义插入字。
<del>定义删除字。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值