HTML基础入门

学习推荐地址w3school

一、HTML页面结构

1、前端

前端开始中最基本的也是最必须的三个技能,前端的开发中,在页面的布局时:

  • HTML:页面结构,可以把他看成一个文档,定于展示页面的内容结构
  • CSS:页面表现,元素的大小、颜色、位置、隐藏或显示、部分动画效果
  • JavaScript:页面行为,部分动画效果,页面与用户的交互,页面功能

2、HTML历史

HTML:超文本标记语言,是网页制作必备的编程语言,超文本就是指页面可以包含图片,连接,甚至音乐,程序等非文字元素

  • HTML2.0:是1996年由internet工程工作小组的HTML工作小组开发的
  • HTML3.2:作为W3C标准发布于1997年1月14日,HTML3.2向HTML2.0标准添加了被广泛运用的特性,如:字体、表格、appies、围绕图像的文本流、上标和下标
  • HTML4.0:被发布1997年12月18日,而仅仅进行了一些编辑修正的第二版本发布于1998年4月24日。HTML4.0最重要的特性是引入了样式表(CSS)
  • HTML4.01:发布于1999年12月24日(微小改进)
  • XHTML1.0:发布于2000年1月20日,使用XML对HTML4.01进行了重新的表示
  • HTML5:,W3C于2014年1月22日发布工作草案

3、HTML的页面结构

超文本编辑语言的结构包括:头部(head)、和主体(boby),其中头部提供关于网页的信息,主体提供网页的具体结构

<!DOCTYPE html>
<html lang="en">
<head>
    <!--头部信息,不会在页面显示-->
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <!--主体部分 页面中显示内容-->
    <h1>第一个网页页面</h1>
</body>
</html>

1. 文档声明

  • HTML5:

2. 页面头部

  • 第二行和最后一行组成的html标签对,定义html文档的整体
  • head和boby标签对是它的第一次子元素
  • head标签对:标签里负责对网页进行一些设置以及定义标题,设置包括定义网页的编码格式,外链css样式文件和js文件,设置的内容不会显示在网页上,标题的内容会显示在标题栏

3. 页面内容

  • body标签对:元素定义文档的主体,就是页面显示的内容
  • body元素包含文档的所有内容(文本、超链接、图像、列表、表格等)

二、常见的HTML标签

1、注释:<!-- -->

  • 注释标签用于源代码中插入注释、注释不会显示在游览器中
  • 代码中合理使用注释有助于以后的时间对代码编辑

2、标题标签:

  • <h1>-<h6>标签对定义
    • h1 定义最大的标题
    • h6 定义最小的标题
  • 由于h元素拥有确切的语义,因此请慎重的选择恰当的标签层级来构建文档结构,因此请不要用比标题标签来改变同一行的字体大小
<!--标题标签-->
    <h1>标题1</h1>
    <h2>标题2</h2>
    <h3>标题3</h3>
    <h4>标题4</h4>
    <h5>标题5</h5>
    <h6>标题6</h6>

3、段落和换行标签

  • <p></p>: p标签定义段落,元素会自动在其前后创建一些空白,游览器会自动添加这些空间,也可以在样式中规定
    • &nbsp; :段落中空格可以加入这个来增加段落的空格,一般不推荐使用,在样式控制格式
  • <hr> : hr标签在HTML页面中创建一条水平线,水平分割线可以在视觉上将文档分割成各个部分
  • <br> :换行标签
<hr>
<p>这个是段落标签 &nbsp;&nbsp;段落<br>标签</p>
<hr>

4、块标签

  • <div></div>: div标签块元素,表示一块内容,没有具体的语义,可以把页面内容分成一个个结构块
  • <span></span>: 行内元素,表示一行中的一小段内容,没有具体的语义,如果行内部分内容需要渲染时,可以用sapn标签分成一小块一小块的去渲染
<div >块标签,没有具体语义,</div>
<div>将结构分成一块一块的</div>
<p>这里是正常颜色<span style="color:red" >python是红色</span>
<span>java</span></p>

5、含样式和语义的行内标签

标签 含义
<i></i> 行内元素,字体为斜体
<em></em> 行内元素,语义为强调内容,表示重要,效果斜体
<b></b> 行内元素,字体加粗
<strong></strong> 行内元素,语义强调,表示非常重要,效果字体加粗
<i>字体是斜体</i><br>
<em>语义为强调,表示重要,效果斜体</em><br>
<b>粗体字</b>
<strong>语义强调,表示非常重要,效果字体加粗</strong>

6、图像标签和链接标签

图片标签:<img src=" alt="">:

  • img元素是向网页中嵌入一个图像
  • 请注意,从技术上讲,img标签并不会在网页中插入图像,img变迁创建的是被引用图像的占位空间
  • 属性
    • src:图片地址
    • alt:规定在图像无法显示时的替代文本

链接标签:<a href=""></a>

  • 定义超链接,用于从一张页面链接到另一张页面
  • 属性
    • href :连连接的地址
    • a标签中间的文本为连接说明和点击跳转的入口

样式链接:<link rel="stylesheet" type="text/css" href="theme.css">

  • 表示连接到一个外部样式,用在头部中
  • 属性
    • rel :规定当前文档与被链接文档之间的关系。
    • type :规定被链接文档的 MIME 类型。
    • href :规定被链接文档的位置。
<img src="img/bd_logo1.png" alt="百度首页" width="200" height="100">
<img src="img/bd_logo12222.png" alt="百度首页"><br>
<a href="http://www.baidu.com">百度一下</a>

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

7、列表

有序列表: <ol></ol>

  • <li></li> :表示列表的一列数据
  • li标签文字部分表示列表的内容
  • 有序表示列表有顺序1,2,3,4,5
<ol>
    <li>列表一</li>
    <li>列表一</li>
    <li>列表一</li>
    <li>列表一</li>
    <li>列表一</li>
</ol>

无序列表:<ul></ul>

  • <li></li> :表示列表的一列数据
  • li标签文字部分表示列表的内容
  • 无需表示,列表没有顺序,小黑点表示
<ul>
    <li>无序一</li>
    <li>无序一</li>
    <li>无序一</li>
    <li>无序一</li>
    <li>无序一</li>
</ul>

8、表格

表格标签:<table border="1"></table>

  • 简单的html表格由table元素以及一个或者多个tr、th、td标签组成
    • <th></th>:表示表格的表头
    • <tr></tr>:表示表格的行
    • <td></td>:表示表格的列
<!--border="1" 表示表格的线条粗细-->
<table border="5">
    <!--定义一行表头-->
    <tr>
    <th>姓名</th>
    <th>年龄</th>
    <th>性别</th>
    </tr>
    <!--定义两行-->
    <tr>
        <!--定义列和定义单元格内容-->
        <td>小明</td>
        <td>18</td>
        <td>男</td>
    </tr>

    <tr>
        <td>小明</td>
        <td>18</td>
        <td>男</td>
    </tr>
</table>

三、HTML表单

1、表单标签:form

<form action="url" method="get/post"></form>

  • action="url" :规定当提交表单时向何处发送表单数据,接口地址。
  • method="get/post":规定用于发送表单数据的 HTTP 方法。
  • form表单中包含的元素标签
元素标签 作用
<label></label> 中间写入文本,为表单元素定义文字标注
<input> 定义通用的表单元素
<textarea></textarea> 定义多行文本输入框
<slect></select> 定义下拉表单元素
<option></option> 定于下拉表单中的元素选项,配合select标签使用

2、input标签的属性

  • value属性: 定义表单元素的值,表单提交的value值,和name属性的key对应
  • name属性: 定于表单元素的名称,此名称是提交数据时的键命(接口请求参数的名称)
  • placeholder属性: 帮助用户填写输入字段的提示
<!--name、value、placeholder属性示例-->
<form action="" method="get">
    <!--帐号密码输入框-->
    <label for="username">帐号:</label>
    <input type="text" name="username" id="username" placeholder="请输入帐号"><br>
    <label for="pwd">密码:</label>
    <input type="password" id="pwd" name="pwd" placeholder="请输入密码"><br>
    <label>性别:</label>
    <input type="radio" name="gender" value="男"> 男
    <input type="radio" name="gender" value="女">女
    <br>
    <input type="submit" value="登陆">
    
</form>
  • type属性
作用
text 定义单行文本输入框
password 定义密码输入框
radio 定义单选框
checkbox 定义复选框
file 定义上传文件
submit 定义提交按钮
button 定义一个普通按钮
reset 定义重置按钮
image 定义图片作为提交按钮,用src属性定义图片地址
hidden 定义一个因此的表单域,用来存储值

3、label标签

  • 为表单元素定义标注
  • label元素不会向用户呈现任何特殊效果,不过,它为鼠标用户改进了可用性,如果您在label元素内点击本,就会触发此控件,就是说当用户通过点击label标签时,游览器会自动化将焦点转到和标签相关的表单控件上
  • label标签的for属性和哪个表单的id相同,就表示和哪个表单关联

4、textarea标签

  • textarea标签定义多行的文本输入控件
  • 本文本区中容纳无线数据的文本,其中的文本的默认字体是等宽字体(通常是Courier)
  • 可以通过cols和rows实行来规定textarea的尺寸,更好的办法是使用CSS的height和width属性来控制
<!--多行输入框-->
<label for="text">文本说明</label>
<textarea name="text" id="text" cols="10" rows="2" placeholder="输入需要说明的文本">
</textarea><br>
  • textarea的属性
属性 描述
autofocus autofocus 规定在页面加载后文本区域自动获得焦点。
cols number 规定文本区内的可见宽度。
disabled disabled 规定禁用该文本区。
form form_id 规定文本区域所属的一个或多个表单。
maxlength number 规定文本区域的最大字符数。
name name_of_textarea 规定文本区的名称。
placeholder text 规定描述文本区域预期值的简短提示。
readonly readonly 规定文本区为只读。
required required 规定文本区域是必填的。
rows number 规定文本区内的可见行数。
wrap hard soft 规定当在表单中提交时,文本区域中的文本如何换行。

5、select标签

  • slelct元素可以撞见单选或者多选下拉菜单,也可以用于选择数据提交表单
  • select标签中的option标签用于定义列表中的可用选项
<!--下拉框-->
<select name="fruit">
    <option value="苹果" >苹果</option>
    <option value="香蕉">香蕉</option>
    <option value="西瓜">西瓜</option>
</select>

6、select标签

  • option元素定义一个下拉框中的一个选项
  • 游览器将option标签中的内容作为select标签的菜单或者是滚动列表中的一个元素显示
  • option标签位于select标签内部

四、内联框架

1、iframe

  • iframe元素会创建包含另外一个文档的内联框架

例子:将百度页面链接到当前页面

<!--内联框架-->
<iframe src="http://www.baidu.com"  height="1000" width="2000"></iframe>

五、HTML元素分类

元素就是标签,布局中常见的又三种标签

  • 块标签
  • 内联标签
  • 内联块标签

1、块标签

块标签也可以成为行标签,布局中常用的标签如:div、p、ul、li、h1-h6、dl、dt、dd等都是块标签,它在布局的行为:

  • 支持全部的样式
  • 如果没有设置宽度,默认的宽度是父级宽度的100%
  • 盒子占据一行,几十设置了宽度

2、内联标签

内联标签,也可以成为行内标签,布局中常用的标签如:a、apan、em、b、strong、i等内联标签,他们布局中的行为

  • 支持部分样式(不支持宽、高、margin上下、padding上下)
  • 宽高由内容决定
  • 盒子并在一行
  • 代码换行、盒子之间产生间距
  • 子元素是内联元素,父元素可以用text-align设置子元素水平对齐方式

3、内联块标签

内联块标签,也叫行内块标签,是新增的元素类型、现有的元素没有归于此类别的,lmg个input标签的行为类似这种元素,但是也归于内联标签,我们可以通过用display属性将块标签或者内联标签转化成这种标签,他们在布局中的行为:

  • 支持全局样式
  • 盒子并在一行
  • 代码换行,盒子产生间距
  • 子元素是内联块元素,父元素可以用text-align属性设置子元素水平对齐方式

display属性是永凯色织元素的类型及隐藏的

  • none 元素隐藏不占用位置
  • block 元素以块元素显示
  • inline 元素以内联元素显示
  • inline-block 元素以内联块元素显示

总结

  • 这种元素,可以通过display属性随便转换
  • 在实际开发中块元素用的较多,所以我们经常把内联元素转成块元素,少量的转换成内联块,
  • 而使用内联元素时,直接使用内联元素,而不用块元素转换
原文地址:https://www.cnblogs.com/jiangmingbai/p/10994319.html