HTML结构及常见标签

1.HTML结构

认识 HTML 标签
HTML 代码是由 " 标签 " 构成的 .
形如 :
<body> hello </body>
<body id = "myId" > hello </body>
标签名 (body) 放到 < >
大部分标签成对出现 . <body> 为开始标签 , </body> 为结束标签 .
少数标签只有开始标签 , 称为 " 单标签 ".
开始标签和结束标签之间 , 写的是标签的内容 . (hello)
开始标签中可能会带有 " 属性 ". id 属性相当于给这个标签设置了一个唯一的标识符 ( 身份证号码 )

HTML 文件基本结构

<html>
    <head>
        <title> 这是一个页面 </title>
    </head>
    <body>
      hello world
    </body>
</html>
html 标签是整个 html 文件的根标签 ( 最顶层标签 )
head 标签中写页面的属性 .
body 标签中写的是页面上显示的内容
title 标签中写的是页面的标题 .
标签层次结构
父子关系 
兄弟关系
<html>
    <head>
        <title> 第这是一个页面 </title>
    </head>
    <body>
      hello world
    </body>
</html>
其中 :
head body html 的子标签 (html 就是 head body 的父标签 )
title head 的子标签 . head title 的父标签 .
head body 之间是兄弟关系 .

 

快速生成代码框架
 VS Code  中创建文件 xxx.html , 直接输入 ! ,  Enter  , 此时能自动生成代码的主体框架 .
<!DOCTYPE html>
<html lang = "en" >
<head>
    <meta charset = "UTF-8" >
    <meta name = "viewport" content = "width=device-width, initial-scale=1.0" >
    <title> Document </title>
</head>
<body>
   
</body>
</html>
细节解释 : ( 了解即可 , 不必深究 )
<!DOCTYPE html> 称为 DTD ( 文档类型定义 ), 描述当前的文件是一个 HTML5 的文件 .
<html lang="en"> 其中 lang 属性表示当前页面是一个 " 英语页面 ". 这里暂时不用管 . ( 有些浏览器会根据此处的声明提示是否进行自动翻译).
<meta charset="UTF - 8"> 描述页面的字符编码方式 . 没有这一行可能会导致中文乱码 .
<meta name="viewport" content="width=device - width, initial - scale=1.0">
name="viewport" 其中 viewport 指的是设备的屏幕上能用来显示我们的网页的那一块区
.
content="width=device - width, initial - scale=1.0" 在设置可视区和设备宽度等宽 ,
设置初始缩放为不缩放 . ( 这个属性对于移动端开发更重要一些 ). 

2.HTML常见标签

注释标签
注释不会显示在界面上 . 目的是提高代码的可读性 .
<!-- 我是注释 -->

ctrl + / 快捷键可以快速进行注释/取消注释.  

标题标签 : h1-h6
有六个 , h1 - h6. 数字越大 , 则字体越小 .
段落标签 : p
把一段比较长的文本粘贴到 html , 会发现并没有分成段落 .
p 标签之间存在一个空隙
当前的 p 标签描述的段落 , 前面还没有缩进
自动根据浏览器宽度来决定排版 .
html 内容首尾处的换行 , 空格均无效 .
html 中文字之间输入的多个空格只相当于一个空格 .
html 中直接输入换行不会真的换行 , 而是相当于一个空格 .
换行标签 : br
br break 的缩写 . 表示换行 .
br 是一个单标签 ( 不需要结束标签 )
br 标签不像 p 标签那样带有一个很大的空隙 .
<br/> 是规范写法 . 不建议写成 <br>
格式化标签
加粗 : strong 标签 和 b 标签
倾斜 : em 标签 和 i 标签
删除线 : del 标签 和 s 标签
下划线 : ins 标签 和 u 标签
<strong> strong 加粗 </strong>
<b> b 加粗 </b>
<em> 倾斜 </em>
<i> 倾斜 </i>
<del> 删除线 </del>
<s> 删除线 </s>
<ins> 下划线 </ins>
<u> 下划线 </u>

 

图片标签 : img
img 标签必须带有 src 属性 . 表示图片的路径.
<img src = "rose.jpg" >

此时要把 rose.jpg 这个图片文件放到和 html 中的同级目录中.

img 标签的其他属性:

alt: 替换文本 . 当文本不能正确显示的时候 , 会显示一个替换的文字 .
title: 提示文本 . 鼠标放到图片上 , 就会有提示 .
width/height: 控制宽度高度 . 高度和宽度一般改一个就行 , 另外一个会等比例缩放 . 否则就会图片失衡.
border: 边框 , 参数是宽度的像素 . 但是一般使用 CSS 来设定 .
<img src = "rose.jpg" alt = " 鲜花 " title = " 这是一朵鲜花 " width = "500px" height = "800px"
border = "5px" >
注意 :
1. 属性可以有多个 , 不能写到标签之前
2. 属性之间用空格分割 , 可以是多个空格 , 也可以是换行 .
3. 属性之间不分先后顺序
4. 属性使用 " 键值对 " 的格式来表示 .
关于目录结构 :
对于一个复杂的网站 , 页面资源很多 , 这种情况可以使用目录把这些文件整理好 .
1) 相对路径 : html 所在位置为基准 , 找到图片的位置 .
        同级路径: 直接写文件名即可 ( 或者 ./)
        下一级路径: image/1.jpg
        上一级路径: ../image/1.jpg
2) 绝对路径 : 一个完整的磁盘路径 , 或者网络路径 . 例如
        磁盘路径 D:\rose.jpg
        网络路径 https://images0.cnblogs.com/blog/130623/201407/300958470402077.pn
代码示例
1) 使用相对路径 : 创建一个 image 目录和 html 同级 , 并放入一个 rose2.jpg

 <img src="image/rose2.jpg" alt="">

2) 使用相对路径2: image 目录中创建一个 html, 并访问上级目录的 rose.jpg

<img src="../rose.jpg" alt=""> 

3) 使用绝对路径1: 最好使用 / , 不要使用 \

<img src="D:/rose.jpg" alt=""> 

4) 使用绝对路径2: 使用网络路径

<img src = "https://images0.cnblogs.com/blog/130623/201407/300958475557219.png"
alt = "" >
超链接标签 : a
href: 必须具备 , 表示点击后会跳转到哪个页面 .
target: 打开方式 . 默认是 _self. 如果是 _blank 则用新的标签页打开 .
<a href = "http://www.baidu.com" > 百度 </a>
链接的几种形式 :
外部链接 : href 引用其他网站的地址
<a href = "http://www.baidu.com" > 百度 </a>
内部链接 : 网站内部页面之间的链接 . 写相对路径即可 .
在一个目录中 , 先创建一个 1.html, 再创建一个 2.html
<!-- 1.html -->
我是 1.html
<a href = "2.html" > 点我跳转到 2.html </a>
<!-- 2.html -->
我是 2.html
<a href = "1.html" > 点我跳转到 1.html </a>

空链接: 使用 # href 中占位.

<a href="#">空链接</a> 

下载链接: href 对应的路径是一个文件. (可以使用 zip 文件)

<a href="test.zip">下载文件</a>  

网页元素链接: 可以给图片等任何元素添加链接(把元素放到 a 标签中)

<a href = "http://www.sogou.com" >
    <img src = "rose.jpg" alt = "" >
</a>
表格标签
基本使用
table 标签 : 表示整个表格
tr: 表示表格的一行
td: 表示一个单元格
th: 表示表头单元格 . 会居中加粗
thead: 表格的头部区域 ( 注意和 th 区分 , 范围是比 th 要大的 )
tbody: 表格得到主体区域 .

table 包含 tr , tr 包含 td 或者 th. 

 表格标签有一些属性, 可以用于设置大小边框等. 但是一般使用 CSS 方式来设置.

这些属性都要放到 table 标签中 .
align 是表格相对于周围元素的对齐方式 . align="center" ( 不是内部元素的对齐方式 )
border 表示边框 . 1 表示有边框 ( 数字越大 , 边框越粗 ), "" 表示没边框 .
cellpadding: 内容距离边框的距离 , 默认 1 像素
cellspacing: 单元格之间的距离 . 默认为 2 像素
width / height: 设置尺寸 .
注意 , 这几个属性 , vscode 都提示不出来 .
合并单元格
跨行合并 : rowspan="n"
跨列合并 : colspan="n"
步骤
1. 先确定跨行还是跨列
2. 找好目标单元格 ( 跨列合并 , 左侧是目标单元格 ; 跨行合并 , 上方是目标单元格 )
3. 删除的多余的单元格
合并单元格
跨行合并 : rowspan="n"
跨列合并 : colspan="n"
步骤
1. 先确定跨行还是跨列
2. 找好目标单元格 ( 跨列合并 , 左侧是目标单元格 ; 跨行合并 , 上方是目标单元格 )
3. 删除的多余的单元格
元素之间是并列关系
ul/ol 中只能放 li 不能放其他标签 , dl 中只能放 dt dd
li 中可以放其他标签 .
列表带有自己的样式 , 可以使用 CSS 来修改 . ( 例如前面的小圆点都会去掉 )
表单标签
表单是让用户输入信息的重要途径 .
分成两个部分 :
表单域 : 包含表单元素的区域 . 重点是 form 标签 .
表单控件 : 输入框 , 提交按钮等 . 重点是 input 标签 .
form 标签
<form action = "test.html" >
  ... [form 的内容 ]
</form>

描述了要把数据按照什么方式, 提交到哪个页面中.

input 标签
各种输入控件 , 单行文本框 , 按钮 , 单选框 , 复选框 .
type( 必须有 ), 取值种类很多多 , button, checkbox, text, file, image, password, radio .
name: input 起了个名字 . 尤其是对于 单选按钮 , 具有相同的 name 才能多选一 .
value: input 中的默认值 .
checked: 默认被选中 . ( 用于单选按钮和多选按钮 )
maxlength: 设定最大长度 .

1) 文本框 

 <input type="text">

2) 密码框

<input type="password">  

3) 单选框  

性别 :
<input type = "radio" name = "sex" >
<input type = "radio" name = "sex" checked = "checked" >
注意 : 单选框之间必须具备相同的 name 属性 , 才能实现 多选一 效果 .
4) 复选框
爱好 :
<input type = "checkbox" > 吃饭 <input type = "checkbox" > 睡觉 <input type = "checkbox" >
打游戏

5) 普通按钮

<input type="button" value="我是个按钮"> 

6) 提交按钮

<form action = "test.html" >
    <input type = "text" name = "username" >
    <input type = "submit" value = " 提交 " >
</form>

提交按钮必须放到 form 标签内. 点击后就会尝试给服务器发送

 

7) 清空按钮

<form action = "test.html" >
    <input type = "text" name = "username" >
    <input type = "submit" value = " 提交 " >
    <input type = "reset" value = " 清空 " >
</form>

清空按钮必须放在 form . 点击后会将 form 内所有的用户输入内容重置.

8) 选择文件

<input type="file">  

 

 

label 标签
搭配 input 使用 . 点击 label 也能选中对应的单选 / 复选框 , 能够提升用户体验 .
for 属性 : 指定当前 label 和哪个相同 id input 标签对应 . ( 此时点击才是有用的 )
<label for = "male" > </label> <input id = "male" type = "radio" name = "sex" >
select 标签
下拉菜单
option 中定义 selected="selected" 表示默认选中
注意 ! 可以给的第一个选项 , 作为默认选项
<select>
    <option> -- 请选择年份 -- </option>
    <option> 1991 </option>
    <option> 1992 </option>
    <option> 1993 </option>
    <option> 1994 </option>
    <option> 1995 </option>
</select>

textarea 标签

<textarea rows = "3" cols = "50" >
   
</textarea>
无语义标签 : div & span
div 标签 , division 的缩写 , 含义是 分割
span 标签 , 含义是跨度
就是两个盒子 . 用于 网页布局
div 是独占一行的 , 是一个大盒子 .
span 不独占一行 , 是一个小盒子 .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/437137.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ant-desgin charts双轴图DualAxes,柱状图无法立即显示,并且只有在调整页面大小(放大或缩小)后才开始显示

摘要 双轴图表中&#xff0c;柱状图无法立即显示&#xff0c;并且只有在调整页面大小&#xff08;放大或缩小&#xff09;后才开始显示 官方示例代码 在直接复制&#xff0c;替换为个人数据时&#xff0c;出现柱状图无法显示问题 const config {data: [data, data],xFiel…

Kubernetes-3

Kubernetes学习第3天 Kubernetes-31、查看实时的cpu和内存消耗1.1、kubectl top node 2、卷的使用2.1、什么是卷&#xff1f;1. 解决数据持久性问题2. Kubernetes 中的卷抽象概念3. 共享数据示例4. Kubernetes 中的卷使用5. 不同类型的卷6. 灵活、可靠的数据管理 2.2、联想到do…

CVE-2024-27198 JetBrains TeamCity 身份验证绕过漏洞分析

漏洞简介 JetBrains TeamCity 是一款由 JetBrains 公司开发的持续集成和持续交付服务器。它提供了强大的功能和工具&#xff0c;旨在帮助开发团队构建、测试和部署他们的软件项目 JetBrains TeamCity发布新版本修复了两个高危漏洞JetBrains TeamCity 身份验证绕过漏洞(CVE-20…

玩转安卓之配置gradle-8.2.1

概述&#xff1a;看了一下&#xff0c;由于gradle是国外的&#xff0c;所以下载速度很慢&#xff0c;这个老师又是很菜的类型&#xff0c;同学又不会&#xff0c;于是曹某就写这一篇文章&#xff0c;教大家学会简单的为安卓配置gradle-8.2.1。 第一步&#xff1a;下载gradle-8…

VScode插件

开发环境准备 VSCodeNodejs官方推荐使用的脚手架工具 Yeoman 和 Generator-code插件打包和发布工具 vsce 脚手架使用 1、安装 npm install -g yo generator-code2、使用脚手架 3、执行 Inside the editor, open src/extension.ts and pressF5. This will compile and run …

顺序表以及单链表

目录 1顺序表&#xff08;规范&#xff09; 2单链表&#xff08;规范&#xff09; 3总结 1顺序表&#xff08;规范&#xff09; #include<iostream> using namespace std; #define MAXSIZE 100 #define ok -1 #define error -2 typedef int Status; typedef int…

C++(12)——模板初阶

模板初阶 泛型编程 在日常敲代码过程中&#xff0c;我们难免需要用到交换数据的情况 我们就需要写Swap函数来进行数据的交换。虽然我们可以用函数重载实现交换不同数据类型的Swap函数&#xff0c;但是还是有一些不太方便的地方&#xff1a; 1 重载的函数仅仅是类型不同。代码…

AttributeError: ‘ChatGLMTokenizer‘ object has no attribute ‘sp_tokenizer‘

目录 问题描述 在使用ChatGLMlora微调的时候&#xff0c;报错“AttributeError: ChatGLMTokenizer object has no attribute sp_tokenizer“ ​编辑问题解决&#xff1a; 问题描述 在使用ChatGLMlora微调的时候&#xff0c;报错“AttributeError: ChatGLMTokenizer object h…

一篇就够!产品经理必知的软件工具盘点

无论是初入职场的新人还是正在考虑转向产品经理领域的人&#xff0c;了解并熟练使用一些关键的软件工具对于成功地执行产品管理任务至关重要。在这篇文章中&#xff0c;我们将深入介绍一些产品经理常用的软件工具&#xff0c;涵盖项目管理、团队协作、原型设计以及数据分析等多…

博客系统测试

文章目录 1.项目背景介绍2.功能介绍3.手动测试3.1编写测试用例3.2项目测试3.2.1登录测试3.2.2查看详情页面3.2.3编辑页面3.2.4删除博客3.2.5注销用户 大家好&#xff0c;我是晓星航。今天为大家带来的是 博客系统测试 相关的讲解&#xff01;&#x1f600; 1.项目背景介绍 项…

[pdf]《软件方法》强化自测题业务建模需求分析共191页,230题

潘加宇《软件方法》强化自测题业务建模需求分析共191页&#xff0c;230题&#xff0c;已上传CSDN资源。 在完成书中自测题基础上&#xff0c;进一步强化。 也可到以下地址下载&#xff1a; 资料http://www.umlchina.com/url/quizad.html 如果需要网盘提取码&#xff1a;uml…

【射频连接器】SMB/SMC 同轴连接器

阻抗为 50 欧姆的 Connex SMB/SMC 超小型同轴连接器适用于 4 GHz &#xff08;SMB&#xff09; 或 10 GHz &#xff08;SMC&#xff09; 的应用。这些连接器通常比 SMA 便宜&#xff0c;主要用于微波电话和其他非国防电信要求的应用。 SMB 连接器具有快速连接/断开卡扣式配接功…

大话设计模式——5.代理模式(Proxy Pattern)

1.定义 为其他具体对象提供一种代理用以控制对这个对象的访问&#xff0c;属于结构型模式。 UML图&#xff1a; 2.示例 生活中有许多的代理&#xff0c;如房产中介&#xff0c;房主出售的房子挂在中介处&#xff0c;中介帮忙寻找需要的客户&#xff0c;客户不需要直接接触房…

万物皆可Find My,伦茨科技ST17H6x芯片赋能产品苹果Find My功能

苹果的Find My功能使得用户可以轻松查找iPhone、Mac、AirPods以及Apple Watch等设备。如今Find My还进入了耳机、充电宝、箱包、电动车、保温杯等多个行业。苹果发布AirTag发布以来&#xff0c;大家都更加注重物品的防丢&#xff0c;苹果的 Find My 就可以查找 iPhone、Mac、Ai…

深入浅出运维可观测工具(四):如何使用eBPF绘制网络拓扑图

哈喽~又到了我们技术分享环节了。eBPF这个系列自分享以来收到了很多朋友的喜欢&#xff0c;真是让博主又惊又喜&#xff0c;感谢大家的支持。话不多说&#xff0c;今天我们将对如何使用eBPF绘制网络拓扑图做一篇分享&#xff0c;文章较长&#xff0c;干货较多&#xff0c;大家可…

11_Http

文章目录 HttpHttp协议网络模型Http协议的工作流程Http请求报文请求行请求方法请求资源协议版本 请求头空行请求体抓包软件&#xff1a;Fiddler Http响应报文响应行状态码 响应头响应体 请求完整的处理流程 Https 整体流程图&#xff1a; 前端&#xff1a;负责获取数据&#xf…

mysql bug( InnoDB: Error number 22),表突然不能读取

mysql bug&#xff08; InnoDB: Error number 22&#xff09;&#xff0c;表突然不能读取 bug最开始的bug&#xff1a;表突然不能读取关闭mysql容器&#xff0c;再次重启失败 解决方案不重建容器的几种可能措施重建容器重建如果懒得打命令或者忘记命令可能的run bug&#xff1a…

【MySQL知识体系】第2章 数据库与表的创建(一)

第2章 数据库与表的创建 2.1 数据库操作 2.2 表操作 文章目录 第2章 数据库与表的创建2.1 数据库操作2.1.1 创建第一个数据库2.1.2 更新数据库名称&#xff08;数据库创建后无法修改名称&#xff09;2.1.3 删除数据库2.1.4 取个合适的数据库名称 第2章 数据库与表的创建 2.1 数…

Vue2 中通过自定义指令将字母转大写

需求是需要将 Code 录入的字母转为大写 /*** 字母转大写*/function inputHandler(e) {e.target.value e.target.value.toUpperCase();// 触发 input 事件以便 v-model 更新数据e.target.dispatchEvent(new Event("input")); }export default {bind: function (el) {…

教育界杂志《教育界》杂志社教育界编辑部2024年第2期目录

教育视界 小学语文课内外阅读的有效融合策略 任小惠; 2-4 项目化学习在初中音乐教学中的应用探索 毛海蓉; 5-7 探索之窗《教育界》投稿&#xff1a;cn7kantougao163.com 儿童无边界阅读支撑系统的建构与实施 袁干斌;蒯红良; 8-10 中学教学 基于核心素养培养的高…