html基础

浏览器

作用:Http请求的发起、接收,都是由浏览器来完成的。
浏览器有很多厂商提供,全球五大浏览器:

  • IE(Internet Explorer):Trident内核(IE Edge的内核为斯巴达)
  • 火狐(Firefox):gecko内核
  • 苹果(Safari):webkit内核
  • 谷歌(Chrome):Blink内核
  • 欧朋(Opera):谷歌blink内核

Http请求

Http:Hypertext Transfer Protocol,超文本传输协议。
Http协议包含了请求响应两个部分。都是要依赖浏览器。
请求:request,浏览器根据网址对对应的服务器发送请求。
响应:response,服务器根据请求响应文件,将页面传输给客户端,在浏览器中进行网页的渲染。
发送Http请求的方法:直接输入网址,点击超级链接
访问页面时,会同时发出多个Http请求,包括网页的图片、视频、音频等文件。

HTML框架

DocType Defination:文档类型定义(DTD),用来定义文档的规范。可以内部声明也可以外部声明。

  • 内部声明:<!DOCTYPE 根元素[元素声明]> 例如:<!DOCTYPE html>
    外部声明 : <!DOCTYPE 根元素 类型 文件名> 例如:<!DOCTYPE HTML PUBLIC"-//W3C//DTDHTML4.0Transitional//EN">
    作用:规定了HTML使用的是哪个版本的HTML书写规范
    html、css、js规范维护更新的组织 W3C组织
    注:HTML5不基于SGML规范,因此不需要引用DTD

HTML标签、元素和属性

  • 元素:网页实际上就是由许许多多各种各样的HTML元素构成的文本文件,所以说,HTML元素就是构成HTML文件的基本对象,HTML元素是一个统称。HTML元素就是通过使用HTML标签进行定义的。
  • 标签:标签就是<head>、<body>、<title>等被尖括号“<”和“>”包起来的对象,绝大部分的标签都是成对出现的,如<title></title>、<body></body>当然还有少部版分不是成对出现的,如<br>、<img>等。
    标签就是用来标记HTML元素的。位于起始标签和结束标签之间的文本就是HTML元素的内容。
    注意:元素是实体,标签是名称(标记)
    HTML标签分类
    • 容器级标签: h1-h6 pre div
    • 文本级标签:p code span
    • 文本级标签一般不能或不建议嵌套容器级标签,但是容器级可以嵌套文本级标签
  • 属性:为HTML元素提供各种附加信息的就是HTML属性,它总是以属性名=属性值这种名值对的形式出现,而且属性总是在HTML元素的开始标签中进行定义。
    属性分类:
    • 必须属性:img图片标签中的src alt
    • 可选属性:img图片标签 width heigh
    • 标准(全局)属性: id class style lang
    • 事件属性: onclick onmouseover onmouseout

字符集

定义了当前使用的字库

  • 中文字库:UTF-8:国际标准字库。包含了人类所有语言的文字。一个汉字三个字节
  • GBK/gb2312:中国字库,国家标准。包含所有的简体中文,大部分为繁体,一些特殊字符,片假名。一个汉字2个字节。
    ps:分情况使用
    网页是外文网站。使用UTF-8字库。有大量的中文,要求网页加载速度快,用gbk字库。
    注意:必须保证设置的字符集和软件保存的字符集类型一致。

HTML常用标签

<head>标签

<head>标签用于定义文档的头部,它是所有头部元素的容器。<head>中的元素可以引用脚本、指示浏览器在哪里找到样式表、提供元信息等。文档的头部描述了文档的各种属性和信息,包括文档的标题、在Web中的位置以及和其他文档的关系等。绝大多数文档头部包含的数据都不会真正作为内容呈现给读者。
下面这些标签可以用在head部分:<base><link><script><style>以及<title>

  • base标签为页面上的所有链接规定默认地址和默认目标
  • href:规定页面中所有相对链接的基准url
  • target:在何处打开页面中所有的链接(_blank,_parent,_self,_top,framename)
  • title:标签内部放的是网页的名字,里面的内容可以帮我们提高搜索引擎优化(SEO)
  • 其他头部标签:
    • link 定义文档与外部资源的关系。如引入外部样式:shortcut icon
    • style 定义内嵌样式
    • script 引入外部脚本,或定义内嵌脚本
    • meta 提供页面相关的元信息(meta-information),标签位于文档的头部,不包含任何内容
    • content 定义与http-equiv或name属性相关的元信息
    • http-equiv 把content属性关联到HTTP头部(content-type,expires,refresh,set-cookie),如<meta http-equiv="Refresh" content="5;url=https://www.baidu.com" />
    • name 把content属性关联到一个名称(author,description,keywords(SEO优化)等)
<img>标签

img标签是一个单标签,单标签在标签内使用/结束。
img标签的属性:

  • src 添加资源文件的路径
  • alt 图片加载失败后的文本提示
  • title 文本提示信息(鼠标悬停)
  • width 设置图片的宽度
  • heigth 设置图片的高度
  • border 设置图片的边框厚度(默认黑色实线,且不可修改)
    路径:
  • 绝对路径:目标文件所在的完整的路径(带盘符)
    • 本地文件的绝对路径 D:\素材\其他\a.jpg
    • 服务器的绝对路径:http://www.baidu.com/demo.jpg
  • 相对路径:目标文件相对于引用文件所在的位置
    • / 根目录 (绝对路径)
    • ./ 当前目录 (绝对路径)
    • …/ 退出当前目录 (绝对路径)
<a>标签

一个网站中有很多的页面,页面之间通过超链接进行跳转,超链接可以看做是网页的灵魂。
a标签是一个双标签,有开始标记和结束标记 <a href="#" >点我跳转</a>
属性:

  • href 设置超链接的地址 # 代表链接到当前页面或者页面的某个位置
  • title 文本提示信息
  • rel 规定当前文档与被链接文档之间的关系
  • download 规定被下载的超链接目标
  • media 规定被链接文档是为何种媒介/设备优化的
  • type 规定被链接的文档的MIME类型
  • arget 页面的打开方式
    • _self 当前页面中打开新的页面(新页面覆盖当前页面)
    • _blank 在新的页面中打开(会创建一个新的窗口来打开新的页面)
    • _parent 页面的父窗口或父框架中打开
    • _top 将页面在整个浏览器窗口打开
  • framename 在指定的框架中打开页面
<!-- 外部的页面 -->
    <a href="https://www.baidu.com" target="_blank" title="百度网站">百度</a>
    <!-- 只写a,代表打开当前的页面 -->
    <a href="#">当前页面</a>
    <!-- 打开本地文件 -->
    <a href="../demo2/hello.txt">本地页面</a>

锚点
锚点的设置:给标签设置id属性(要求id是唯一的),通过另一个a标签href属性去链接这个锚点
还可以链接到当前页面中的指定位置,还可以链接到其他页面的指定部分。例如:

<a href="day2.html#middle">跳转到中间位置</a>
<a href="#top">返回顶部</a>
div和span标签
  • div:容器级标签,(division 范围、区域、分割)用来划分独立的逻辑块。是一个容器(大的区域),本身在网页中没有任何的默认样式,可以放置任何标签和内容。里面可以存放一些相近、相同功能的标签。div会把页面分割成一个小的区域
  • span:文本级标签,只能放文字、图片、表单元素等,用来修饰部分文本的效果(小的跨度范围)
    div作为容器,如果没有内容撑起,或者不设置宽高,是没有默认效果
    通常大的内容放在div中,小的内容放在span
    div盒子内容会独占一行,span的内容会写在一行
无序列表

无序列表:给文本添加无序的列表语义。项与项之间没有顺序的先后之分(没有先后顺序)

  • ul   unordered list无序列表
  • li    list item列表项
    ul和li这两个标签必须同时出现,不能单独书写
    ul里可以嵌套一个或者多个li标签,但ul里面只能放li标签,不能放其他内容
    li标签是一个典型的容器级标签,可以放置任何的内容标签,甚至可以放置子级ul和li
    ul和li只能添加无序列表的语义,默认li的前面小圆点的样式。我们可以通过type属性修改:
    disc 默认实心圆 Circle 空心圆 square 实心方块
有序列表

有序列表:给文本添加有序列表的语义。

  • ol   ordered list有序列表
  • li     list item列表项
    ol和li 也是一组标签,必须同时出现
    ol里只能嵌套li标签。li不能脱离ol自己出现。ol里可以嵌套多个li标签
    li是一个容器级标签,里面可以放置任何内容,甚至ol、ul.
    虽然现实会有阿拉伯数字排序,但是我们ol的作用仅仅是添加有序列表的语义。数字样式不是ol的作用。

ol元素属性

  • type 属性设置有序列表的项目符号(ol有且只有5个)
    A 大写英文字母 a 小写英文字母 1 阿拉伯数字 I 大写罗马数字 i 小写罗马数字
  • start 设置列表符号从第几个开始排列,属性值只能是阿拉伯数字
  • reversed 设置有序列表符号的倒序(html5新增)这是一个布尔型的属性,关于这类型的 属性有两种写法:reversed或reversed=“reversed”
    注:ul、ol项目符号不能互相使用,但是li标签可以使用它们任何一个
列表

dl定义列表给我们的文本添加定义列表语义。

  • dl defination list 定义列表
  • dt defination title 定义标题
  • dd defination description 定义描述
    dl里面嵌套了dt和dd。dt和dd是同一级的标签。dd是对dt的解释、说明、定义。
    dl里面只能放置dt、dd。dt和dd都是容器级标签,里面的内容是不限制的。
    dl里面可以放置多组的dt和dd。dt后面的dd可以有多个。这些dd都是在解释上面的dt。
    dt后面可以没有dd,表示没有解释说明。
    实际工作中,经常将每一组dt和dd单独放在一个dl标签内部。
form标签

表单用来收集用户数据,并将其提交到对应的地址。
我们所有的表单元素都要写在一个form标签内部,form标签是一个功能性的标签,不是结构性。
form:是表单的语义化标签,属性如下

  • name 定义表单的名称
  • action 设置数据提交的地址
  • method 设置数据提交的方式,如:GET提交、POST提交
  • target 页面打开的方式,如_self,_blank,_parent,_top,framename
    表单中的控件:textarea文本域     select 下拉列表     input 输入框    button按钮

在表单提交的数据中,=前面代表数据的名称(name),=后面代表数据值(value)
?是数据的开始,&链接的是两组数据

表单控件通用属性:

  • name 规定文本区的名称
  • value 定义送往服务器的选项值(表单控件的值)
  • autofocus 规定在页面加载后文本区域自动获得焦点(html5新增)
  • form 规定文本区域所属的一个或多个表单(html5新增)
  • placeholder 规定描述文本区域预期值的简短提示(HTML5新增)
  • disabled 规定禁用该文本区
  • readonly 规定文本区为只读
  • maxlength|minlength 规定文本区域的最大|最小字符数(textarea和input)
  • required 规定文本区域是必填的(textarea和input)(HTML5新增)
textarea与label标签

textarea多行文本域,又可以称为多行文本输入框,属性如下:

  • rows 设置行高,属性值是数字
  • cols 设置列宽,属性值是数字
  • label标签为表单控件(textarea,input)定义标注:
    for 规定label绑定到哪个表单控件 id
    我们还可以将表单控件写在label内,实现联动
 <!-- 表单 -->
    <!-- action  提交数据的地址
    method  提交数据的方式
    target  在哪里查看结果 -->
    <form action="./create" method="get" target="_blank">
        <!-- 对表单控件的标注 -->
        <label for="description">商品描述</label>
        <!-- 多行文本框 -->
        <!-- cols和rows代表的是字节 -->
        <textarea id="description" cols="30" rows="10"></textarea>
        <!-- 第二种方式引起触发 -->
        <label >
            简介
            <textarea cols="30" rows="10"></textarea>
        </label>
    </form>
select标签

select标签可以创建单选或多选菜单,属性:

  • multiple 设置多选
  • size 设置显示在页面上的列表的项数

option标签用来定义下拉列表中的一个选项(一个条目),属性:

  • selected 设置默认被选中的列表项(布尔型属性)
    注意:内容只能是文本,不能出现标签

optgroup标签定义选项组

  • label 为选项组规定描述
input标签

input:用于输入的语义标签。用于搜集用户信息。input是一个单标签,也叫做自封闭标签
控件的类型由type属性确定:

  • text 单行文本框,文本输入框(默认的输入框类型)
  • pattern 规定输入字段的值的模式或格式(html5新增)
  • password 密码输入框
  • radio 单选框
  • checkbox 复选框,多选框
    单选和复选框name的值必须一致,这样才能保证是同一个题干下面的不同选项
  • checked属性,设置默认被选中;布尔值属性
  • image 图像
  • src设置图片的路径 width和height设置图片的宽度和高度
  • file 文件
  • hidden 隐藏文件
  • button 普通按钮
  • submit 提交按钮
  • reset 重置按钮
button标签

button标签定义一个按钮,属性:

  • type 规定按钮的类型(button,reset,submit)
    button空间与input type="button"控件相比:
    button标签之间的所有内容都是按钮的内容,比如文本或多媒体内容
    兼容性:IE的默认类型是“button”,而其他浏览器中(包括W3C规范)的默认值是“submit”
<form action="">
    <!-- 文本框 -->
    <input type="text" name="username" value="hello">
    <!-- input按钮如果不设置type,ie低版本行为与button一样,标准行为和submit一样 -->
    <!-- button控件与input比较 -->
    <!-- 1 button在标签之间设置内容,input在value属性中设置内容 -->
    <!-- 2 button内容中可以包含其他的标签,input不能渲染其他的标签 -->
    <button>
        <!-- 可以跳转 -->
        <a href="http://www.baidu.com">百度</a> 
    </button>
    <!-- 不能跳转 -->
    <input type="button" value="<a href='http://www.baidu.com'></a>">
</form>
其他标签
  • pre 预格式化原样输出,不会像普通的p标签那样只显示一个空格
  • code 单行代码
  • strong 强调标签,加粗效果
  • em 强调标签,斜体效果
  • ins 下划线
  • del 删除线
  • abbr 定义缩写
  • br 换行
  • hr 分割线
  • address 定义地址
  • iframe 内联框架,嵌套页面,例如在网页中嵌套百度页面可以用:
    <iframe src="https://www.baidu.com" height="300" width="600"></iframe>
废弃标签
  • font 字体标签
  • frame 定义框架
  • b 加粗
  • i 斜体字
  • u 下划线
  • s 删除线
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值