0


html 基础学习笔记

Date:20231212

html标签 基础学习笔记

一、web和internet

1.1、Internet简介

  • Internet 是一个全球性的计算机互联网络,中文名称有"因特网"、“国际互联网”、“网际网”、"交互网络"等
  • Internet提供的主要服务 - Telnet、Email、www、BBS、FTP等
  • 基本实现技术 - 分组交换原理:信息在Internet上被分成许多小数据包(分组)进行传输,到达目的地后将数据包重组为信息- TCP/IP协议簇
  • Web与Internet的关系 - Web是运行在Internet之上最流行的应用之一,Internet为Web提供了网络环境- Web的出现,极大的推动了Internet的普及与推广

1.2、Web简介

  • 又称为万维网或环球网,即 WWW (World Wide Web)
  • 把各种类型的信息和服务无缝连接,提供生动的图形用户界面(可以称之为文档)
  • 万维网其实就是无数文档的集合,这些文档驻留在因特网的某些地方

1.3、web的工作原理

  • Web 是基于Internet 的一个多媒体信息服务系统 - 基于浏览器/服务器模式- 由Web服务器、浏览器(Browser)和通信协议三部分组成- 通信协议采用的是HTTP协议:超文本传输协议(Hypertext Transfer Protocol)
  • 在Web服务器上,主要以网页的形式来发布多媒体信息、 - 网页采用超文本标记语言HTML(Hyper Text Markup Language)编写
  • 浏览器软件连接到Web服务器并获取网页 - 浏览器解释HTML网页文档,并显示在用户的屏幕上

1.4、Web服务器

  • 主要功能- 存储Web上的内容信息(如:Web页文件),提供管理环境- 响应浏览器的请求,执行服务端程序- 安全功能等
  • 主要web服务器产品- TOMCAT- IIS- APACHE

1.5、服务端技术

  • 运行于服务端
  • 大多提供了数据库访问的能力 - PHP- JSP- ASP- Node

1.6、客户端技术

  • 运行于客户端,由浏览器来解释运行 - HTML- CSS- JavaScript

二、HTML

2.1、超文本

  • Web是一个超文本文件的集合
  • 超文本文件时web的基本组成单元,也称为网页或HTML文档,web页等,通常以.htmlhtm为后缀的文件
  • Web页之间通过超文本中的超级链接组织在一起

2.2、什么是HTML

  • HTML(HyperText Markup Lanuage):超文本标记语言,一种纯文本类型的语言 - 使用带有尖括号的"标记"将网页中的内容逐一标识出来
  • 用来设计网页的标记语言
  • 用该语言编写的文件,以.htmlhtm为后缀
  • 由浏览器解释执行
  • HTML页面上,可以嵌套用脚本语言编写的程序段,如VBScript、JavaScript

2.3、标记语法

  • HTML 用于描述功能的符号称为"标记",比如p、h1等 - 标记在使用时必须使用尖括号括起来- 有封闭类型标记,又有非封闭类型的标记
  • 封闭类型标记,也叫双标记,必须成对出现 - <标记>内容</标记>
  • 非封闭类型标记,也叫空标记,或者单标记 - <标记/>- 或者- <标记>- 不能包含内容

2.4、元素

  • 元素,即标记
  • 每一对尖括号包围的部分 - 如 <body></body>包围的元素就叫做body元素- 元素就像是小标签,用于标识网页文档的不同部分

2.5、元素嵌套

  • 元素之间可以相互嵌套,形成更为复杂的语法
  • 在嵌套元素时需要注意标记的嵌套顺序
  • 案例<body><p>段落1</p></body>

2.6、属性和值

  • 属性用来修饰元素 - 属性的声明必须位于开始标记里- 一个元素的属性可能不止一个,多个属性之间用空格隔开- 多个属性之间不区分先后顺序
  • 每个属性都有值 - 属性和属性的值之间用等号连接- 属性的值包含在引号中,或 单引号、不写引号都可以
<palign="center">段落一</p>
  • 标准属性 - 每个元素都有自己所特有的属性- 有些属性是绝大多数元素都支持的属性,称为标准属性(或通用属性) - id- title- class- style

2.7、注释

  • 为代码添加适当的注释是一种良好的编码习惯
  • 注释只在编辑文档情况下可见,在浏览器展示页面时并不会显示
  • 添加注释的语法:<!-- 注释的文本内容 -->- <!---->之间的任何内容都不会显示在浏览器中- 注释不可以嵌套在其他注释中- 注释不可以位于嵌在<>中

2.8、文档结构

<!-- 网页的头部,页面的全局信息 --><!DOCTYPEhtml><html><head><!-- 页面的标题 --><title></title><!-- 页面的元数据(形容页面的东西) --><metacharset="utf-8"><!-- 跟搜索排名有关 --><metaname=""content=""><!-- 引入js文件 --><script></script><!-- 元素内部样式 --><style></style><!-- 引入css文件 --><link/></head><!-- 网页的主体,页面展示的内容 --><body></body></html>

三、元素标签

<xxx>

3.1、头部标签/元素

  • <head> 元素用于为页面定义全局信息- 所有其他头元素的容器- 紧跟在起始标签<html>之后- 可包含 <title><meta><script><style><link>
  • <title> 用于为文档定义标题- 标题元素的内容出现在浏览器顶部- 没有属性- 必须出现在<head>元素中- 一个文档只能有一个标题元素
  • <meta> 用于定义网页的基本信息- 元数据元素- 为空标题- 常用属性有:content http-equiv

3.2、

<body>

主体内容

  • <body>元素出现在<head>元素之后,包含网页要显示给读者的内容,称为主题内容
  • 可以包含除了html、head外的所有元素
  • body的专有属性: bgcolor text
  • 案例<!-- 背景颜色 --><!--字体颜色 --><bodybgcolor="#000000"text="yellow"> 我的第一个网页</body>

3.3、文本标记

  • 文本是网页上的重要组成部分
  • 直接书写的文本会用浏览器默认的样本显示
  • 包含在标记中的文本则会被显示为标记所拥有的样式 - 标题元素- 段落元素- 换行元素- 分区元素- 特殊字符- 注释

3.3.1、标题元素

<hn>
  • 标题元素让文字以醒目的方式显示,往往用于文章的标题
  • 基本语法<h#>..</h#>- #=1,2,3,4,5,6- 从h1到h6,即 标题1-标题6

3.3.2、段落元素

<p>
  • p元素提供了结构化文本的一种方式
  • p元素的文本会用单独的段落显示 - 与前后的文本都换行分开- 添加一段额外的垂直空白距离,作为段落间距- 常用属性:align

3.3.3、换行元素

<br>
  • 使用br元素在任何地方创建手动换行 - 空标记

3.3.4、分割线元素

<hr>
  • hr元素用于在页面上创建一条水平线- 空标记- 常用于将页面的不同部分隔开- hr后面的文本将出现在新段落中
  • 常用属性- size- width- align- color
  • 案例<hrcolor="red"width="50%"size="10px"align="right"></hr>

3.3.5、预格式化元素

<pre>
  • 保留源文档中的格式,即保留原来的换行和文本中的空白
  • 把源码中的格式保留到页面当中

3.3.6、特殊字符

  • 空格折叠 - 多个空格或制表符压缩成单个空格,即只显示一个空格
  • 特殊字符(如空格),需要进行转义(使用字符实体) - &nbsp; 代表一个空格- &copy; 版权©- &reg; 注册商标 ®- &It; 小于 <- &gt; 大于 >- &yen; ¥- &times; ×

3.3.7、文本样式标签

  • 文本样式的作用是对文本进行修饰,如加粗,倾斜等 - 加粗: <b>..</b>,<strong>..</strong>- 倾斜: <i>..</i>,<em>..</em>- 下划线: <u>..</u>- 删除线: <s>..</s>,<del>..</del>- 上标: <sup>..</sup>- 下标: <sub>..</sub>

3.4、分区元素

  • 分区元素用于为元素分组,常用于页面布局
  • 块分区元素: <div></div>
  • 行内分区元素: <span></span>- 设置同一行文字内的不同格式
  • 案例<spanstyle="color:red">hello!</span>world

3.5、行内元素与块级元素(重要)

  • 块级元素 - 默认情况下,块级元素会独占一行,即元素前后都会自动换行- 如 p,div,hn
  • 行内元素 - 不会换行,可以和其他行内元素位于同一行- 如 span,b,i,u

3.6、web目录结构

  • 目录就是web站点中文件夹的名称 - 包含多个目录- 每个目录包含站点的不同部分
  • web站点的主目录,称为web站点的根目录 - 位于根目录下的其他文件夹,称为子目录- 每个子目录下都会包含具体功能的下一级子目录

3.7、URL 统一资源定位器

  • URL(Uniform Resource Locator): 统一资源定位器,用来标识网络中的任何资源 - 文本,图片,音视频文件,段落,或其他超文本
  • 即路径,指从当前位置到目标位置所经过的路线
  • 路径在Web页面主要有三种形式 - 绝对路径 - 指的是文件从最高级目录下开始的完整的路径,无论当前路径是什么,使用绝对路径总是能找到要链接的文件- 即完整的URL组成 - 协议,主机名,目录路径,文件名- 相对路径 - 指文件的位置是当对于当前文件的位置,它包括目录名,或指向一个可以从当前目录触发找到该文件的路径- 根相对路径 - src="d:/0.9.png" 项目中禁止用根目录方式获取图片资源,因为d盘是服务器的d盘,浏览器访问不到d盘

3.8、

<img>

图片标签

  • <img>或者<img/>
  • 专有属性: - src=url 图片资源- alt 当图片加载失败时,显示的文本

3.9、

<a>

超链接标签

  • 属性- href 没有href就是一个文本- target指定打开连接的方式取值:默认缺省_self 在本页面打开 _blank 在新页面打开
  • 作用- 跳转网页或网站 <a href="http://www.baidu.com">baidu</a>- 跳转锚点- 锚点,就是页面上的一个记号,点击a标签之后会跳转到记号的位置- 在某位置下记号h4方式 <a name=“锚点名称”></a>h5 方式 任意标签<any id=“锚点名称”></any>- 跳转到本页锚点 <a href="#锚点名称">火影忍者</a>- 跳转到其他页面的锚点 <a href="**.htm#锚点名称">火影忍者</a>- 下载 <a href="" download="01.png">下载</a>- 返回顶部 <a href=”#”>返回顶部</a>- 调用js脚本<ahref="javascript:alert('hello world')"></a><script>functionfn(){alert('hello world')}</script><ahref="javascript:fn()">调用js脚本</a>

3.10、

<table>

表格标签

3.10.1、表格的语法

  • 快捷键: table>tr*4>td*4
  • 表格中列,如果变宽,影响的是所有行这一列的宽度;如果变高,影响的是,当前行所有列的高度

3.10.2、table的属性

  • width=“400px” 宽度
  • height=“400px” 高度
  • border=“2px” 边框
  • bordercolor=“red” 边框颜色
  • bgcolor=“orange” 背景颜色
  • align=“center” 水平对齐方式
  • cellpadding=“50px” 单元格内边距(边框到内容之间的距离)
  • cellspacing=“50px” 单元格的外边距

3.10.3、tr属性

  • align=“right” 这一行内容的水平对齐方式 left/center/right
  • valign=“middle” 这一行内容的垂直对齐方式 top/middle/bottom
  • bgcolor=“yellow” 这一行的背景

3.10.4、td属性

  • width=“200px” 宽度
  • height=“200px” 高度
  • bgcolor=“purple” 背景色
  • align=“left” 这一列内容的水平对齐方式
  • valign=“bottom” 这一列内容的垂直对齐方式
  • colspan 跨列合并
  • rowspan 跨行合并

3.10.5、不规则的表格

  • 跨列colspan 从指定的单元格位置位置处开始,横向向右合并n个单元格(n包含自己),然后把被合并的单元格删除掉.
  • 跨行rowspan 从指定的单元格位置处开始,纵向向下合并n个单元格(n包含自己),然后把被合并的单元格删除掉

3.10.6、可选标题

caption
  • 表格的标题 <caption>我是标题</caption>
  • 必须紧紧跟着table的开始标签
  • 案例<tablewidth="200px"height="200px"border="2px"><!-- 唯一的,可不写 --><caption>我是标题</caption><tr> .... </tr> ....</table>

3.10.7、表格的复杂应用

  • 表头<th>..</th>- 特点: 加粗,居中- th替代td,所有的td的属性,th都可以使用
  • 行分组- 可以将连续的几行,划分到一个组上,进行统一的管理- 表头 <thead></thead>- 表主体 <tbody></tbody>- 表脚 <tfoot></tfoot>- 行分组不见,如果源码没有行分组,浏览器渲染时,自动添加tbody
  • 表格的嵌套- 表格中所有的嵌套,都要放在td中

3.11、

<ul>
<li>
<dl>
<ol>

列表标签

  • 列表的作用- 有条理的显示数据- 传统项目,无序列列表多由于布局
  • 列表类型- 有序列表 <ol>...</ol>- 无序列表 <ul>...</ul>- 列表项 <li>..</li>
  • 列表的属性- 有序列表的属性- start=“4” 指定编号的起始位置- type=“I” 指定编号的类型默认 1 数字 A/a 英文字母 i/I 罗马数字- 无语列表的属性- type=“none”默认值 disccircle 空心圆square 实心方块none 没有标识
  • 列表的嵌套- 所有的嵌套都必须放在li内部,语义要求。- 列表嵌套列表,被嵌套的列表,也必须放在li中
  • h5–定义列表- 定义列表常用于给出一类事物或对明词的解释说明<dl><dt>JavaScript</dt><dd>它是一种解释性语言</dd></dl>

3.12、

<input>

表单标签

3.12.1、作用

  • 提供可视化的输入控件
  • 用户输入的内容,被表单自动收集整理,并且提交给服务器

注意 :表单没有接受响应的能力,所以可以使用js的dom操作收集页面的信息,再使用ajax发送请求和接受响应,但是ajax不能自动的收集整理数据。而且使用ajax就无法使用form表单自动收集提交数据的功能。

3.12.2、表单

<form></form>
  • <form></form> 在页面上不可见,可以自动收集整理数据提交到服务器
  • 属性 - action=“” 定义表单提交时发送的动作(接口url)- method=“” 定义表达提交的方式- enctype=“”指定表单数据的编码方式,设置允许将什么样的数据提交给服务器取值:1. application/x-www-form-urlencoded默认值,允许将任何字符提交给服务器(文件除外) 2. text/plain 允许提交普通字符(不包括特殊字符) 3. mulitipart/form-data传递文件
  • 在form标签中,能够与用户进行交互的可视化元素
  • <input type=""> 所有input元素都是行内块
  • 在页面中提供各种各样的输入控件
  • input分类 - input元素 基础9种,h5新出的10种- textarea 多行文本域- select+option下拉选择框- 其他相关元素
  • input公用属性 - type 指定input元素的类型 默认值是text- name 为控件定义名称,提供给服务端使用(使用form,name必须写)- value 控件的值,真正传递给服务器的值/可发送的值例外,所有的按钮的value都是设置按钮上的文本,不是提交的值。- disable 禁用 只能看不能改,也不能提交,无值属性

3.12.3、表单控件

  • 文本框 <input type="text">- 属性maxlength允许输入的最大字符数readonly 无值属性 只能读不能改 但是可以提交placeholder 占位提示符,显示在控件上的提示内容
  • 密码框 <input type="password">- 属性maxlength允许输入的最大字符数readonly 无值属性 只能读不能改 但是可以提交placeholder 占位提示符,显示在控件上的提示内容
  • 按钮,所有的按钮的value都是设置按钮上显示的文本,不是提交的值。- 提交 type=“submit”将表单中的数据,收集并整理,发送给服务器- 重置 type=“reset”将当前的表单的内容恢复到初始化状态- 普通按钮type=‘button’没有功能,配合oncilck事件,调用js脚本。- 为了提高可读性,h5新出的button标签- 同submit,可以使用事件。
  • 单选按钮 <input type="radio">- 属性- 必须有value属性- 必须有name属性,不然没有分组,即没有单选效果- checked 无值属性 一个元素被设置该属性,默认选中- 案列<inputtype="radio"name="gender"value="man"checked> 男<inputtype="radio"name="gender"value="man"> 女<inputtype="radio"name="gender"value="man"> 无法确定<!-- 没有name,一不能提交,二不能分组--><!--value是提交的值,不加,提交的值会显示on -->
  • 多选按钮 <input type="checkbox">- 属性- 必须有value- name 用于分组- checked 无值属性,默认选中- 案例<formaction=""method="get"><button>提交</button><inputtype="checkbox"name="hobby"value="eat">吃 <inputtype="checkbox"name="hobby"value="drink">喝 <inputtype="checkbox"name="hobby"value="play">玩 <inputtype="checkbox"name="hobby"value="happy">乐</form><!-- 没有name,一不能提交,二不能分组--><!--value是提交的值,不加,提交的值会显示on --><!--form表单自动提交,get请求,参数自动拼接在地址栏--><!-- http://xxxx/02.html?hobby=eat&hobby=drink&... -->
  • 隐藏文本域 <input type="hidden">- 想把数据提交给服务器,但是又不想展示给用户看
  • 文本选择块<input type="file">- 使用文件选择框的前提 - form的method必须是post,没有大小限制- enctype=‘mulitipart/form-data’,才能上传文件- 如果想要上传多个文件,multiple无值属性,设置多选
  • 多行文本域 `- 把文本域看作一个大的文本域,允许录入多行文本- cols=“5” rows=“3” 设置文本域大小,但是计算机的内核和算法不同会导致值不准备
  • 下拉选择框 <select name=""><option>...</option>...</select>- select 的属性: - size:默认值为1,1的时候显示形式是下拉选,而>1是滚动选择框- multiple:无值属性,设置多选- option属性: - selected 无值属性 默认选中- option没有定义value,那么select提交的value是选中的option的内容- option有value,那么select提交的value,是选中option的value
  • 表单控件其他元素- <label>标签- 可以使用label替代form表单中span标签- 文本和表单控件的关联- 案例<input id="auto" type="checkbox"><label for="auto">请点我</label>- 为控件分组 <fieldset>``````<fieldset><!-- 为控件分组--><legend></legend><!-- 分组标题--></fieldset><fieldset><legend>用户的基本信息</legend> 用户姓名: <inputtype="text"name="uname"><br> 用户密码: <inputtype="password"name="upwd"><br><inputid="man"type="checkbox"naem="gender"value="man"><labelfor="man">男</label><inputid="woman"type="checkbox"naem="gender"value="woman"><labelfor="woman">女</label></fieldset>

3.13、

<iframe>

框架标签

  • <iframe></iframe>
  • 在一个html中,引入其他的html
  • 属性: - src 资源路径- frameborder框架得边框- scrolling框架得滚动条 no 不要滚动条 yes auto- height- width
标签: html 学习 笔记

本文转载自: https://blog.csdn.net/Code_King006/article/details/134969757
版权归原作者 @德玛玩前端 所有, 如有侵权,请联系我们删除。

“html 基础学习笔记”的评论:

还没有评论