HTML基础

基本结构

 

专业术语

标签

HTML标签是HTML的基本组成,一般由一对<>组成,比如<p>hello world</p>对于只有一个<>的标签,我们叫单标签,单标签最后需要加/表示结束,比如<img/>

属性

每一个标签的开头,都可以加属性,比如<a href=""></a>,这个href就是属性,每一个元素都有一些自己独有的属性,而script 和style属性则是每个标签都有的.

文档

HTML文档从<html>开始,在</html>结束,这里面包裹的内容就是HTML文档,文档头由<head>定义,而文档主体由<body>定义.

标记省略

HTML的标签并不是都要写结束标签的。根据对标签省略的力度来划分,标签可以分为3种:

  1. 不允许写结束标签

    比如metainput

  2. 可以省略结束标签

    li、dt、p、thead等

  3. 可以完全省略

    html、head、body、colgroup

 

标签属性

如果属性为boolean类型,那么属性有三种写法来开启属性。

 

 

 

属性两边对于字符串并不敏感,可以加双引号、单引号,也可以不加。

 

 

 

元素

 

文档相关标签

!DOCTYPE

文档类型声明标签

其实!DOCTYPE并不属于HTML的标签,他的功能是声明文档的类型:表明了本HTML究竟采用哪一版html语言写的,因为除了HTML5之外还有XHTML,HTML 4.01 Strict、HTML 4.01 Transitional等等。不过现在一般都用的是HTML5.

<!DOCTYPE> 声明必须是 HTML 文档的第一行,位于<html> 标签之前。之后写上你需要的版本属性

 

html

标志文档起点与终点,还用于定义文档的语言。

 

 

meta

mtea可以提供有关页面的元信息,就是说,可以给搜索引擎提供一个简历,以确保被搜索到.

 

一般常用于引用外部样式,或者JavaScript文件。

还可以用于图标的修改。

 

script

 

文档结构

main

<main> 标签规定文档的主要内容。

元素中的内容对于文档来说应当是唯一的。它不应包含在文档中重复出现的内容,比如侧栏、导航栏、版权信息、站点标志或搜索表单。

 

注释:在一个文档中,不能出现一个以上的 <main> 元素。<main>元素不能是以下元素的后代:<article><aside><footer>、<header> 或 <nav>。

 

section

定义文档中的节(section、区段)。比如章节、页眉、页脚或文档中的其他部分。

body

navigation

section

 

aside

article

p

paragraph

定义段落

文档内容

figure和figcaption

用于文档的插图

 

details和summary

设置本地折叠功能

  • open

    如果设置了这个属性,那么就会展开

总结

1

2

3

基础标签

div

division的缩写,表示分割。

span

span表示跨度。

hr


上面就是水平线了

br

注释

 

链接

a

anchor(锚点)的缩写。

a标签一共有5种链接:

  • 外部链接

  • 内部链接

  • 下载链接:如果链接的是一个zip文件或者其他文件,点击就会下载该文件

  • 锚点链接:可以在页面内跳转,跳转到指定的id。

  • 空连接:没有指定id的锚点,会默认跳到页面最上面。

 

a标签还有一个target属性,用来表示目标窗口的弹出方式。

 

列表

ul,li

无序列表

  • 无序列表

ol,li

顺序列表

  1. 有序列表
属性描述
reversedreversed规定列表顺序为降序。(9,8,7...)
start数字规定有序列表的起始值。
type1 A a I i规定在列表中使用的标记类型。

dl,dt,dd

定义列表
是专门写定义的列表,如下
定义:
我是内容

表单

form

form可以规定表单的范围,也就是所谓的表单域

一个表单由表单域、控件和提示信息三部分组成。

控件就是输入框那些,提示信息就是姓名,性别那些信息。

 

input

input下有很多属性

  • number

     

  • search

  • date

    输入日期

  • time

     

  • text

    value里面输入的值就是默认值,maxlength可以来规定最大的输入字符数。

    输入框:
  • password

  • file

    文件限制中间用逗号隔开

  • reset

    点这个按钮会自动把所有的控件信息初始化。如果把控件信息用JS清空,也会默认初始化。

  • button

  • submit

  • url

  • radio,checkbox

    value属性的值是发送给后端的。name是用于分组的,只有同一组name下,控件才能生效。

     

    姐姐 妹妹
  • range

  • color

 

 

required

如果加了这个属性,那么这个表单必须填写之后才能提交

 

autofocus

自动聚焦

pattern=""

使用正则表达式来匹配内容

 

fieldset,legend

button

select,optgroup,option

select定义选择列表(下拉列表),option就是里面的选项,optgroup则是选项的分组

label

label标签可以让你点到某个文字就能选中选项,可以提高用户体验,这个标签需要搭配id才能使用。

textarea

clos代表每行的字符数

rows代表显示的行数

datalist

在文本输入的时候,可以作为建议文本

 

 

表格

table,td,tr,th

table用于定义表格,tr表示这是一行,td表示是一个元素.有几个tr就有几行,一个tr里面几个td就代表这行有几列.

要注意的是,第一行一般都是表格的头,所以用th修饰

th表示表格头 我也是表头 我也是
table表示一个表格,里面虽然啥都没有,但是可以放表格标签 一个tr就用来表示一行表格 td就表示每个单元格
我是第2个tr,表示第二行

注意:!!!!!!表格默认是没有边框的,这个之所以有,是因为typora自动给我加了样式.

table的属性:

属性 描述
border pixels 规定表格边框的宽度。
cellpadding
  • pixels
  • %
就是表格文字和格子边框的距离
cellspacing
  • pixels
  • %
每个单元格之间的距离
frame
  • void
  • above
  • below
  • hsides
  • lhs
  • rhs
  • vsides
  • box
  • border
规定外侧边框的哪个部分是可见的。
rules
  • none
  • groups
  • rows
  • cols
  • all
规定内侧边框的哪个部分是可见的。
width
  • %
  • pixels
规定表格的宽度。

 

td,th的属性

属性 描述
align
  • left
  • right
  • center
  • justify
  • char
规定单元格内容的水平对齐方式。
axis category_name 对单元格进行分类。
char character 规定根据哪个字符来进行内容的对齐。
charoff number 规定对齐字符的偏移量。
colspan number 设置单元格可横跨的列数。
headers idrefs 由空格分隔的表头单元格 ID 列表,为数据单元格提供表头信息。
rowspan number 规定单元格可横跨的行数。
scope
  • col
  • colgroup
  • row
  • rowgroup
定义将表头数据与单元数据相关联的方法。
valign
  • top
  • middle
  • bottom
  • baseline
规定单元格内容的垂直排列方式。

thead,tbody,tfoot

刚才那个表格其实不是完整版的,虽然也能用.但是实际开发中,能多严谨就要多严谨.

  • thead用于表示表头

  • tbody表示表格主题内容

  • tfoot用于总结表的内容,当然你也随便写点啥

  • 注意:这三个的顺序是thead,tfoot,tbody

 

妹子 特征
总体评价 都是我老婆
牛顿 金毛双马尾
哈雷 大胸软萌
拉瓦锡 腹黑

caption

表示表格的标题

牛顿与苹果树鉴赏表
妹子 特征
牛顿 金毛双马尾
哈雷 大胸软萌
拉瓦锡 腹黑

 

文本

kbd

用于描述键盘上的按键

quit

abbr

用于定义缩写,并且鼠标滞留时还可以有提示

镜5莲华下海了,爷青结.

 

blockquote

blockquote是一个长引用,

它里面的内容会根据编译器自动排版,表示一个段落的引用

cite

cite语义表示引用,可以表示书名,电影什么的,表现为斜体

ruby,rt,rb

ruby用来表示zhùyīn ruby里面表示要注音的内容,rt里面表示拼音,若浏览器不支持,就需要用rp了,rp标签在 ruby 注释中使用,以定义不支持 ruby 元素的浏览器所显示的内容。 我是注音(zhù yīn).

ins,u

这个表示下划线,填空题经常会看到

u也有同样的下划线

del

del里面的内容会被加入删除线,语义上就是删掉的内容

em,i

em语义上表示强调语气,表现为斜体

i一般表示成语,一些关键术语之类的

pre

pre 元素可定义预格式化的文本。被包围在 pre 元素中的文本通常会保留空格和换行符。而文本也会呈现为等宽字体。
说白了就是,pre里面怎么写,浏览器就怎么显示,因为一般浏览器会忽略多个回车和空格
int main()
{
	return 0;
}
但是注意标签不能放进去,有的不会显示

q

q标签表示短引用,一般语义上表示说话之类的,表现为在标签里面的内容,自动被加了双引号

比如说,子曰:知之为知之。

这个引号并不是HTML加的,所以鼠标也不能选中

strong

strong表示强烈强调,语气上非常激动,表现为黑体

bdo

可以将文本反向,dir设置rlt就是从右到左,ltr就是从左到右

12345

bdi

bdi内的文本可以脱离父元素的文本方向。

第一行首先从右开始,发现是bdi标签,里面的内容脱离父元素的文本方向,然后正常输出56789,之后逆向输出01234

第二行则一直逆向输出。

01234567890123456789

mark

可以让被mark的文本高亮显示

高亮显示

sub

sub表示 下标,经常用于x1之类的数学符号

sup

sup可以用来表示 上标,最常见就是y=x2

 

progress

超级强大的标签,可以显示进度。

max代表最大值,value代表目前的进度。不用加单位,直接写数字就行了。

small

通常用于免责声明、条款等.

 

媒体

audio

  • src:音乐的相对路径,可以是本地的url也可以是服务器的地址

  • controls:显示播放器

  • autoplay:自动播放,必须加上muted才能自动播放

  • preload:何时进行预加载

    • auto:浏览器自动决定

    • metadata:浏览器不会缓存,但是对于音轨和时长这样的元数据会进行预加载

    • none:不进行预加载,直到用户激活控件

  • muted:设置静音

  • loop:循环播放

  • poster 设置封面图像

 

有的格式浏览器并不支持mp3,所以需要使用source标签来匹配多种格式的音源

 

 

img

  • src:图片的相对路径

  • alt:如果图片加载失败,就会显示里面的文字

 

 

事件属性

一般都放在body里面。

 

自定义属性

在H5中,如果想要设置自定义属性,需要用data-开头,而且必须赋值

 

通用属性

  • hidden

    让标签隐藏,但是要注意,这个玩意实际上就是display:none

  • contenteditable

    让文档可以编辑

  • draggable="true"

    让元素可以拖拽