HTML基础概述

前言:

对于HTML基础知识总结记录。

1.简介

html 是 Hyper Text Markup Language 的缩写。即 超文本标记语言。

分为三个部分来理解:

  • 超文本: 超出文本范畴。例如:图片、视频等。
  • 标记:指的是标签。使用标签进行标记我们所需要的事物以及相关的属性。
  • 语言:指人与机器,机器与机器交流沟通的方式。

2.基本语法

1.html基本结构

<!-- 注释 -->

<!-- html文档声明, 表示这是什么文件,以及html的版本,此时的版本是 html5 -->
<!DOCTYPE html>
<!-- html标签:是根标签,一个文件中根级别的html标签只能有一个
lang属性表示 此页面使用的语言是什么 en: english, zh(zh-cn):chinese
-->
<html lang="en">
<!--
head标签: 在标签中 声明一些 html文件的配置信息。head定义的内容一般不在页面中显示
    例如: 文件的解析编码,页面标题
-->
<head>
    <!-- meta表示元数据, 加了charset属性时,表示 告诉 浏览器
    使用哪种字符集解析文件内容
    -->
    <meta charset="UTF-8">
    <!-- title标签 用于定义 页面窗口标签的标题 -->
    <title>测试</title>
    <!-- link标签 一般用于引入 外部的 css 文件,href值是文件地址 -->
    <link rel="stylesheet" type="text/css" href="">
    <!-- script标签 有src时 一般用于引入 外部的 js 文件,src值是文件地址 -->
    <script type="text/javascript" src="" ></script>
    <!-- style 定义文件内的 css -->
    <style type="text/css" >
        /*自定义css*/
    </style>
    <!-- script 没有src时,用于定义文件内使用的 js 代码 -->
    <script type="text/javascript" >
        // js代码
    </script>
</head>
<!-- body标签: 是 html文件的正文标签。
用于在页面显示的内容都需要写在此标签中。
浏览器有强大的 容错 和 纠错 能力。
html 语法 要求不严格,大小写不敏感,可以缺失闭合标签。
建议书写要规范。
-->
<body>
<div>xxxxxx</div>
<marquee>欢迎学习Java Web</marquee>
</body>
</html>

2.标签分类

常用分类: 根据标签在文档中位置的特性分为:块级标签、行级标签、行级块标签

1.块级标签(block)

在浏览器显示结果来看,该标签默认 是独占一行。

常见的块级标签: div, p, h1~h6, table, form, ol, ul 等。

特点:

  • 可以设置宽高、内外边距。
  • 独占一行。(可以认为 该标签前后都有换行。不允许其他标签与其在同一行)
  • 如果不设置宽高,则该元素的宽度会和父元素相同。高度会根据内容自动变化。

2.行级标签(inline)

在浏览器显示结果来看,该标签默认 可以和其他 行级标签 在同一行显示。

常见的行级标签: span, a, i, label 等。

3.行级块标签(inline-block)

在浏览器显示结果来看,该标签默认 可以和其他 行级标签 或 行级块标签 在同一行显示。

常见的行级块标签: input, img 等。

特点:

  • 可以设置宽高、内外边距。
  • 可以与 其他 行级、行级块标签 共处一行

3.标签组成

<!-- 标签名 只能是一个 “<” 后面紧跟的第一个单词 -->
<标签名 属性名1="值1" 属性名2="值2" >文本内容</标签名>

<!-- 非闭合标签,没有文本内容 -->
<标签名 属性名1="值1" 属性名2="值2" />

3.常用标签

1.常用的空标签 --- br 换行。hr水平线、link 引入外部外部css 、meta 字符集

<div>测试测试测试测试测试测<br>
    试测试测试测试测试测试</div>
<!-- br 换行标签 -->
<br/>
<!-- hr 水平线, 分割线 -->
<hr>
<!-- link 引入 外部 css 文件,一般写在 head 标签中 -->
<link rel="stylesheet" href="" >
<!-- 此处 表明 页面解析使用的 字符集,一般写在 head 标签中 -->
<meta charset="UTF-8" >

2.正文标题标签 --

  • h1~h6 标签中的文本字体大小 依次 变小。
  • 默认字体加粗,且是块级别标签,不能与其他标签存在一行
<!-- 用于表示 一段文字的标题 -->
<h1>h1</h1>
<h2>h2</h2>
<h3>h3</h3>
<h4>h4</h4>
<h5>h5</h5>
<h6>h6</h6>
<h7>h7</h7><h7>h7</h7>
<!-- 浏览器无法识别的 标签 将被当做是 普通文本标签,例如 span -->

3.文本标签

不建议使用,直接使用css更佳

1.font

2.b(blod) --加粗

3.i --用于让文字 变倾斜。是行级标签。

4.del---用于给文字 添加删除线。是行级标签。

5.ins -- 用于给文字 添加下划线。是行级标签。

6.address -- 主要用于定义文档或文章中作者或拥有者的联系信息。标签内的字体默认倾斜。是块级标签

7.pre  --- 主要用来显示 文本原来的格式 的标签。即不改变标签中文本的排版。是块级标签,且默认有上下外边距。

4.块和段落标签

1.div -- 块标签,主要作用是把文档分割成独立的、不同的部分。

2.span -- 组合行内元素,可以设置不同的样式

<span>
    test
    <i>倾斜字体</i>
    <b>加粗</b>
</span>

3.p

主要用于定义文档的段落。可以包含行标签,不能包括块标签

<p>
    test
    <input type="text"name="test">
    <label>工资:<input type="range" name="sal" min="1000" max="100000" step="1000" ></label>
</p>

5.html实体字符

在html中,有一些字符具有特定的作用,不能直接在浏览器中显示,例如 : <、& 。

所以使用实体字符进行转换。实体字符对大小写敏感

显示结果描述实体名称实体编号
空格&nbsp;
<小于号&lt;<
>大于号&gt;>
&和号&amp;&
"引号&quot;"
'撇号&apos;'
分(cent)&cent;¢
£镑(pound)&pound;£
¥元(yen)&yen;¥
欧元(euro)&euro;
§小节&sect;§
©版权(copyright)&copy;©
®注册商标&reg;®
商标&trade;
×乘号&times;×
÷除号&divide;÷

详情: HTML 实体符号参考手册

6.列表标签

主要用于 页面中的菜单导航,以及内容的分类。

1.ol

有序列表 ordered list,块级标签。

语言:
<!--
li标签 表示 列表项
type 属性 表示 序号样式,值常有:
    1: 序号为数字(默认值)
    a: 序号为小写字母
    A: 序号为大写字母
    i: 序号为 小写罗马数字
    I: 序号为 大写罗马数字
start 属性 表示 序号从几开始,值是 阿拉伯数字
reversed 属性 表示 表示 反转,倒序。该属性的值是 boolean类型的,有此属性即为true,否则为false
-->
<ol type="1" reversed >
    <li>汉语</li>
    <li>英语</li>
    <li>日语</li>
    <li>法语</li>
</ol>

2.ul

无序列表 unordered list,块级标签,用法与ol相同。


<!--
li标签 表示 列表项
type 属性 表示 序号样式,值常有:
    disc 表示 实心圆点,默认值
    square 表示 实心方块
    circle 表示 空心圆点
-->
<ul type="circle" >
    <li>汉语</li>
    <li>英语</li>
    <li>日语</li>
    <li>法语</li>
</ul>

3.dl

自定义列表

<dl>
    <dt>Java</dt>
    <dd>是一种高级编程语言</dd>
    <dd>是一种入门相对简单的语言</dd>

    <dt>HTML</dt>
    <dd>超文本标记语言。浏览器可以解析。</dd>
</dl>

7.超链接标签

标签名 a ,主要用于从一个页面跳转到另一个页面。

没有 href 属性的 a 标签将不具备 页面跳转功能。

<a href="http://www.baidu.com">百度</a>

常用属性:

  • target:目标,以哪一种方式打开 href 属性对应的页面。target常见的值有:

    • blank:在新窗口中打开,当要打开的窗口已存在时,会显示并刷新该窗口。
    • _blank:在新窗口中打开,无论是否已打开,都会开一个新窗口。
    • _self:在当前窗口中打开。是默认值。
    • _parent:在父窗口中打开,如果没有父窗口,则在当前窗口打开。
    • _top:在最顶层的窗口中打开。如果没有最顶层的窗口,则在当前窗口打开。
    • 是framename,是页面中某个 iframe标签 的name属性的值。即在此iframe中打开。
  • href:链接指向的页面的URL(可以是相对地址,可以是请求路径,即网络地址)。

    • 没有值,会跳转当前页面,相当于刷新。

    • 值是 #,跳转到当前页(相当于回到顶部),并且在浏览器地址栏后追加 # 。

    • javascript:void(0); 表示什么都不做。如果把void(0) 换成js中的函数,则点击时会执行该函数。

    • 值是 #当前页面中某个标签的id属性值 或 其他页面的访问地址#该页面中标签的id属性值

      一般称之为 锚记 。点击该a标签时,页面会跳转到 该 锚点处。

1.iframe

在html页面中再嵌入一个html页面(窗口)

<!-- src 是地址(一般是相对当前页面的地址) -->
<iframe name="abc" width="400px" src="./c01.html" frameborder="0"></iframe>

8.图片标签 ---用来在页面中引入一个图片

<!-- 只设置 宽或高时,另一个会自适应 -->
<img width="400px" src="../sources/Desert.jpg" alt="图片加载失败">

<!-- 图片超链接 -->
<a href="http://www.baidu.com" target="_blank">
    <img width="100px" src="../sources/PCtm.png" alt="图片加载失败">
</a>

<a href="http://www.baidu.com" target="_blank">
    <img width="200px" src="http://www.baidu.com/img/flexible/logo/pc/result.png" alt="图片加载失败">
</a>

9.表格标签

页面中定义表格使用,table为根标签

caption    标题。thead  列标签、tbody  表格内容, tfoot 合并单元格 。

表格的基础组成标签:tr 行标签,th 列头 单元格(列名), td 普通单元格。

width : 表格宽度
height : 表格高度
border: 边框的宽度
cellspacing: 单元格间距
cellpadding: 单元格内容与单元格边框之间的距离
<!-- 单元格合并 -->
<table width="300px" border="1px" cellspacing="10px" cellpadding="10px" >
    <thead>
        <tr>
            <th>商品</th>
            <th>类型</th>
            <th>价格</th>
            <th colspan="2" >操作</th>
            <!--<th>操作2</th>-->
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>矿泉水</td>
            <td rowspan="2" >饮料</td>
            <td>2</td>
            <td>查看详情</td>
            <td>修改</td>
        </tr>
        <tr>
            <td>可乐</td>
            <!--<td>饮料</td>-->
            <td>3</td>
            <td>查看详情</td>
            <td>修改</td>
        </tr>
        <tr>
            <td>面包</td>
            <td>面点</td>
            <td>2</td>
            <td>查看详情</td>
            <td>修改</td>
        </tr>
    </tbody>
    <tfoot>
        <tr>
            <td colspan="5" >商品清单</td>
        </tr>
    </tfoot>
</table>

10.表单相关标签(重点)

form 是表单标签,是块级标签。

用于用户输入信息,向服务器传递数据

表单标签中需要有组件标签。例如 input。

<!--
action 表示 表单数据提交的地址
method 表示 数据提交的方式(get/post, 默认为get)
enctype 表示 数据的格式
默认值: application/x-www-form-urlencoded
文件上传时使用 multipart/form-data
onsubmit 表示在表单提交前会执行其中的 js 代码
-->
<form action="" method="get" >
  <!-- 组件 -->
</form>

2.input标签

是 form的组件,用于收集用户输入的信息。根据type属性值不同,会表现出不同的功能。

是行级块标签。

type属性常见的值有:text,password,button等。

input组件的常用属性 :

  • name 向服务器传递数据时,name属性的值是 该数据的名称。可以称之为 参数名。

    如果想把组件的value的值传递到服务器,则name属性值必须存在。

  • value 是上述参数名所对应的值。实际的值,用户输入的值。

text

文本框,用于接收用户输入的文本信息。

<!--
placeholder : 内容区域占位,即输入提示,用户未输入内容前显示的信息。
value : 是真正的值,可以用于预先填入默认值
-->
<input type="text" name="wd" placeholder="请输入查询内容" >

password

密码框,用于接收用户输入的需要隐藏实际内容的一些信息。例如 密码。

<input type="password" name="pwd" placeholder="请输入密码">

radio

单选框,定义一组让用户选择的项,且用户只能选择一项。

一个radio 只是一项,其中value的值是向服务器传递的数据,不是给用户看的。

通过设置 单选框的 name属性的值,name属性值相同时,

表示 这些单选框是同一组,同一组中的单选框只能选一个。

<!-- checked 属性的值是boolean类型, 有此属性表示 true,反之表示false
为true时,会默认变为选中状态。
-->
<!-- 类似 span标签,主要用于对form组件做一些说明。
当label标签的 for属性的值是有对应的标签的id时,
点击label标签就相当于点击 id值对应标签
-->
<label for="manSex">性别:</label>
<input id="manSex" type="radio" value="男" name="sex" checked >男
<label><input type="radio" value="女" name="sex" >女</label>

checkbox

复选框,定义一组让用户选择的项,用户可以多选。

通过相同的name属性值,把多个复选框划分为一组。

其中value的值是向服务器传递的数据,不是给用户看的。

<span>爱好:</span>
<!-- 有checked属性表示 被默认选中 -->
<label><input type="checkbox" name="hobby" value="write_bug" checked >写BUG</label>
<label><input type="checkbox" name="hobby" value="modify_bug" >改BUG</label>
<label><input type="checkbox" name="hobby" value="run" >跑路</label>

number

数值框,用于接收用户输入的数字。非数字的值在获取时,拿到的是空字符串。

<!--
min 允许的最小值
max 允许的最大值
step 通过按钮修改时,值每次变化的量(默认为1)
-->
<label>年龄:<input type="number" name="age" min="1" max="120" step="1" ></label>

email

邮件框,接收用户输入的邮箱地址。

<label>邮箱:<input type="email" name="user_email" ></label>

range

范围框,用于让用户在指定的数值范围中选择一个值。

<!--
min 可选择的最小值
max 可选择的最大值
step 通过按钮修改时,值每次变化的量(默认为1)
用户选择的值,用户本身是看不到的,包括最大、最小可选值 也看不到。
-->
<label>工资:<input type="range" name="sal" min="1000" max="100000" step="1000" ></label>

date/time

日期与时间框。

<label>生日:<input type="date" name="birthday" ></label>
<label>时间:<input type="time" name="time" ></label>

file

文件框,用于接收用户选择的文件。

上传文件时,必须设置 form的 enctype="multipart/form-data" , 否则无法传输文件。

<!--
默认单选,可以选任意文件
multiple 有属性时,可以选多个文件。
accept 限制选择的文件类型
-->
<label>头像:<input type="file" name="headImage" multiple accept="image/*" ></label>

color

获取用户选择的颜色值。

<label>喜欢的颜色:<input type="color" name="color"></label>

hidden

隐藏域。用于隐藏一些内容,该内容不想让用户看到,但服务器需要。

<input type="hidden" name="key" value="vip" >

按钮

  • button 普通按钮,默认没有任何效果。主要用于调用js代码。
  • reset 重置按钮,清空 所在form 中所有用户可输入的组件的value,使其恢复成默认状态。
  • submit 提交按钮,把 所在form 中的可用数据提交给设置的服务器。
<form action="xxx" >
    <input type="submit" value="提交" >
    <input type="reset" value="reset" >
</form>

<input type="button" value="button" >

<!-- 按钮有自己标签, 与input的按钮仅仅是写法不同,功能和用途相同 -->
<button type="submit" >按钮显示的文字</button>
<button type="reset" >按钮显示的文字</button>
<button type="button" >按钮显示的文字</button>

3.input标签的只读与禁用

一般 readonly (只读属性) 会加在 可输入的input上,一般 disabled (禁用属性) 加在 按钮上。

如果输入框加了 disabled ,则该框的value将无法传递到服务器。

<input type="text" name="wd" placeholder="请输入查询内容" value="html" readonly >
<input type="button" value="button" disabled >

4.文本域

文本域,多行文本框。

<!--
name 用于向服务器传递数据
cols 字符列数,每行有多少个字符
rows 显示的最多行数。
textarea 没有 value属性,其标签中的文本就是值,将要传递到服务器的数据。
其标签中的文本 如果预先定义好的话,在页面显示出来的结果 类似 pre 标签。会保留书写的格式
-->
<textarea name="msg" cols="30" rows="10">测试测试测     试测试测试测试测试测试</textarea>

5.select标签

下拉菜单框。默认是单选。

根标签是 select。子标签是 option,表示一个选项。

<!--
option的value值是给服务器的数据,标签中的内容是给用户看的。
option的value属性可以省略,省略时,会把 标签中的内容 发生给服务器。
给 option 添加 selected 属性,设置其为默认选中。
如果想要实现可以多选,给 select 添加 multiple 属性
-->
<label for="city">城市:</label>
<select id="city" name="city" >
    <option value="nj">南京</option>
    <option value="sh">上海</option>
    <option value="bj" selected >北京</option>
</select>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值