【JavaWeb】HTML

news2025/1/11 0:15:16

HTML

  • 1 HTML概念
    • 1.1 超文本
    • 1.2 标记语言
  • 2 HTML的入门程序
  • 3 HTML语法规则
  • 4 使用idea创建StaticWeb工程
  • 5 HTML的各个标签的使用
    • 5.1标题标签
    • 5.2段落标签
    • 5.3换行标签
    • 5.4无序列表标签
    • 5.5超链接标签
    • 5.6图像标签
    • 5.7块标签
  • 6.使用表格标签展示数据
    • 6.1未合并单元格
    • 6.2合并单元格-合并列
    • 6.3合并单元格-合并行
  • 7.使用表单标签提交数据
    • 7.1表单标签的作用
    • 7.2 form标签的介绍
      • 7.2.1 action属性
      • 7.2.2 method属性
    • 7.3表单项标签

1 HTML概念

HTML是Hyper Text Markup Language的缩写。意思是『超文本标记语言』。它的作用是搭建网页结构,在网页上展示内容

1.1 超文本

HTML文件本质上是文本文件,而普通的文本文件只能显示字符。但是HTML技术则通过HTML标签把其他网页、图片、音频、视频等各种多媒体资源引入到当前网页中,让网页有了非常丰富的呈现方式,这就是超文本的含义——本身是文本,但是呈现出来的最终效果超越了文本。

1.2 标记语言

说HTML是一种『标记语言』是因为它不是向Java这样的『编程语言』,因为它是由一系列『标签』组成的,没有常量、变量、流程控制、异常处理、IO等等这些功能。HTML很简单,每个标签都有它固定的含义和确定的页面显示效果。

标签是通过一组尖括号+标签名的方式来定义的:

<p>HTML is a very popular fore-end technology.</p>

这个例子中使用了一个p标签来定义一个段落,<p>叫『开始标签』,</p>叫『结束标签』。开始标签和结束标签一起构成了一个完整的标签。开始标签和结束标签之间的部分叫『文本标签体』,也简称『标签体』。

有的时候标签里还带有『属性』:

<a href="http://www.xxx.com">show detail</a>

href="http://www.xxx.com"就是属性,href是『属性名』,"http://www.xxx.com"是『属性值』。

还有一种标签是『单标签』:

<input type="text" name="username" />

HTML:超文本标记语言:超文本就是文件的格式不仅仅是文本,还有视频与图片标记语言是有标签组成的。

2 HTML的入门程序

  1. 文档声明: HTML文件中第一行的内容,用来告诉浏览器当前HTML文档的基本信息,其中最重要的就是当前HTML文档遵循的语法标准。这里我们只需要知道HTML有4和5这两个大的版本,HTML4版本的文档类型声明是:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    

    HTML5版本的文档类型声明是:

    <!DOCTYPE html>
    

    现在主流的技术选型都是使用HTML5,之前的版本基本不用了。

  2. 根标签:html标签是整个文档的根标签,所有其他标签都必须放在html标签里面。

  3. 头部:head标签用于定义文档的头部,其他头部元素都放在head标签里。头部元素包括title标签、script标签、style标签、link标签、meta标签等等。

  4. 主体:body标签定义网页的主体内容,在浏览器窗口内显示的内容都定义到body标签内。

  5. 注释:HTML注释的写法是:

    <!-- 注释内容 -->
    

    注释的内容不会显示到浏览器窗口内,是开发人员用来对代码内容进行解释说明。

3 HTML语法规则

  • 根标签有且只能有一个
  • 无论是双标签还是单标签都必须正确关闭
  • 标签可以嵌套但不能交叉嵌套
  • 注释不能嵌套
  • 属性必须有值,值必须加引号,单引号或双引号均可
  • 标签名不区分大小写但建议使用小写

4 使用idea创建StaticWeb工程

在这里插入图片描述

5 HTML的各个标签的使用

5.1标题标签

代码

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>HTML</title>
</head>
<body>
Hello Word!

<h1>这是一级标题</h1>
<h2>这是二级标题</h2>
<h3>这是三级标题</h3>
<h4>这是四级标题</h4>

</body>
</html>

页面效果
在这里插入图片描述

5.2段落标签

代码

<!--段落标签-->
<p>世上只有一种英雄主义,就是在认清生活真相之后依然热爱生活。--罗曼罗兰</p>

页面效果
在这里插入图片描述

5.3换行标签

代码

<!--换行标签-->
<p>世上只有一种英雄主义,就是在认清生活真相之后依然热爱生活。<br/>--罗曼罗兰</p>

显示效果
在这里插入图片描述

5.4无序列表标签

代码

<!--无序列表标签-->
<ul>
    <li>apple</li>
    <li>bea</li>
    <li>orange</li>
</ul>

显示效果
在这里插入图片描述

5.5超链接标签

代码

<!--超链接标签-->
<!--
    href属性:跳转到的页面
    target属性:跳转的方式(默认当前页面打开)
        _blank:新页面在新的标签页打开
        _self:新页面在当前页面打开
    ..:上一级目录
    . :当前目录
-->
<a href="https:www.baidu.com" >百度</a>
<a href="https:www.baidu.com" target="_blank">百度</a>
<a href="https:www.baidu.com" target="_self">百度</a>
<a href="../target.html" >target页面</a>
<a href="../target.html" target="_blank">target页面</a>
<a href="../target.html" target="_self">target页面</a>

页面效果
在这里插入图片描述

5.6图像标签

代码

<!--图像标签-->
<img src="../img/car.png" height="300" width="500"/>

显示效果
在这里插入图片描述

5.7块标签

『块』并不是为了显示文章内容的,而是为了方便结合CSS对页面进行布局。块有两种,div是前后有换行的块,span是前后没有换行的块。
代码

<!--块标签-->
<div style="border: 1px solid black;width: 150px;height: 150px;">爱是生命的火焰,没有它,-切变成黑暗一 罗曼罗兰</div>
<div style="border: 1px solid black;width: 150px;height: 150px;">应当细心地观察,为的是理解;应当努力地理解,为的是行动。一罗曼罗兰</div><br/>
<span style="border: 1px solid black;width: 150px;height: 150px;">爱是生命的火焰,没有它,-切变成黑暗一 罗曼罗兰</span>
<span style="border: 1px solid black;width: 150px;height: 150px;">应当细心地观察,为的是理解;应当努力地理解,为的是行动。一罗曼罗兰</span>

显示效果
在这里插入图片描述

6.使用表格标签展示数据

6.1未合并单元格

代码

<!--表格标签-->
<table>
    <tr>
        <th>英雄</th>
        <th>类别</th>
        <th>性别</th>
    </tr>
    <tr>
        <td>孙策</td>
        <td>兰陵王</td>
        <td>王昭君</td>
    </tr>
    <tr>
        <td>战士</td>
        <td>刺客</td>
        <td>法师</td>
    </tr>
    <tr>
        <td></td>
        <td></td>
        <td></td>
    </tr>
</table>

展示效果
在这里插入图片描述
引入样式
在head标签中引入CSS

    <style type="text/css">
        table,th,td {
            border-collapse: collapse;
            border: 1px solid black;
            padding: 5px;
        }
    </style>

展示效果
在这里插入图片描述

6.2合并单元格-合并列

代码

<table>
    <tr>
        <th>英雄</th>
        <th>类别</th>
        <th>性别</th>
    </tr>
    <tr>
        <td>孙策</td>
        <td colspan="2">战士:男</td>


    </tr>
    <tr>
        <td>兰陵王</td>
        <td>刺客</td>
        <td></td>
    </tr>
    <tr>
        <td>王昭君</td>
        <td>法师</td>
        <td></td>
    </tr>
</table>

展示效果
在这里插入图片描述

6.3合并单元格-合并行

展示效果
在这里插入图片描述
代码

<table>
    <tr>
        <th>英雄</th>
        <th>类别</th>
        <th>性别</th>
    </tr>
    <tr>
        <td>孙策</td>
        <td colspan="2">战士:男</td>


    </tr>
    <tr>
        <td rowspan="2">兰陵王<br/>王昭君</td>
        <td>刺客</td>
        <td></td>
    </tr>
    <tr>

        <td>法师</td>
        <td></td>
    </tr>
</table>

7.使用表单标签提交数据

7.1表单标签的作用

在项目开发过程中,凡是需要用户填写的信息都需要用到表单。它的作用是接收用户的输入信息,并且将用户输入的信息提交给服务器

7.2 form标签的介绍

在HTML中我们使用form标签来定义一个表单。而对于form标签来说有两个最重要的属性:action和method。

<form action="/aaa/pro01-HTML/page05-form-target.html" method="post">
    
</form>

7.2.1 action属性

用户在表单里填写的信息需要发送到服务器端,对于Java项目来说就是交给Java代码来处理。那么在页面上我们就必须正确填写服务器端的能够接收表单数据的地址。

这个地址要写在form标签的action属性中。但是现在暂时我们还没有服务器端环境,所以先借用一个HTML页面来当作服务器端地址使用。

7.2.2 method属性

『method』这个单词的意思是『方式、方法』,在form标签中method属性用来定义提交表单的『请求方式』。method属性只有两个可选值:get或post,没有极特殊情况的话使用post即可。

什么是『请求方式』?

浏览器和服务器之间在互相通信时有大量的『数据』需要传输。但是不论是浏览器还是服务器都有很多不同厂商提供的不同产品。

常见的浏览器有:

  • Chrome
  • Firefox
  • Safari
  • Opera
  • Edge

常见的Java服务器有:

  • Tomcat
  • Weblogic
  • WebSphere
  • Glassfish
  • Jetty

这么多不同厂商各自开发的应用程序怎么能保证它们彼此之间传输的『数据』能够被对方正确理解呢?

很简单,我们给这些数据设定『格式』,发送端按照格式发送数据,接收端按照格式解析数据,这样就能够实现数据的『跨平台传输』了。

而这里定义的『数据格式』就是应用程序之间的『通信协议』。

在JavaSE阶段的网络编程章节我们接触过TCP/IP、UDP这样的协议,而我们现在使用的『HTTP协议』的底层就是TCP/IP协议。

HTTP1.1中共定义了八种请求方式:

  • GET
  • POST
  • PUT
  • DELETE
  • HEAD
  • CONNECT
  • OPTIONS
  • TRACE

但是在HTML标签中,点击超链接是GET方式的请求,提交一个表单可以通过form标签的method属性指定GET或POST请求,其他请求方式无法通过HTML标签实现。除了GET、POST之外的其他请求方式暂时我们不需要涉及(到我们学习SpringMVC时会用到PUT和DELETE)。至于GET请求和POST请求的区别我们会在讲HTTP协议的时候详细介绍,现在大家可以从表面现象来观察一下。

7.3表单项标签

表单中的每一项,包括: 文本框、密码框、单选框、多选框等等,都称之为表单项,一个表单中可以包含多个表单项
代码

<!--表单标签-->
<form action="../target.html" method="post">
    <!--文本框-->
    姓名:<input type="text" name="username" ><br/>
    <!--密码框-->
    密码:<input type="password" name-="password" /><br/>
    <!--单选框-->
    水果:<input type="radio" name="fruit" value="apple">苹果
    <input type="radio" name="fruit" value="bea"><input type="radio" name="fruit" value="banana" checked="checked">香蕉<br/>
    性别:<input type="radio" name="sex" value="1"><input type="radio" name="sex" value="0"><br/>
    <!--多选框-->
    爱好:<input type="checkbox" name="hobby" value="woman" checked="checked">女人
        <input type="checkbox" name="hobby" value="car">凯迪拉克
        <input type="checkbox" name="hobby" value="money"><input type="checkbox" name="hobby" value="music">音乐<br/>
    <!--下拉框-->
    凯迪拉克:<select name="kdlk" >
            <option value="ct4">ct4</option>
            <option value="ct5">ct5</option>
            <option value="ct6" selected="selected">ct6</option>
            <option value="xt6">xt6</option>
            </select><br/>
    <!--多行文本域-->
   自我介绍: <textarea name="desc"></textarea><br/>
    <!--按钮
    普通按钮:点击之后没有效果,需要javaScript绑定点击响应函数
    重置按钮:点击之后将表单里面的表单项恢复默认值,提交按钮
    提交按钮:点击后提交表单
    -->
    <button type="button" >普通按钮</button><br/>
    <button type="reset" >重置按钮</button><br/>
    <button type="submit">提交按钮</button><br/>
    <!--隐藏域-->
    <input type="hidden" name="id" value="201811102026">
</form>

显示效果
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

套接字+网络套接字函数+客户端大小写程序

NAT映射 一般来说&#xff1a;源主机和目的主机都属于局域网&#xff0c;也就是ip地址可能相同 但是&#xff1a;路由器一般是公网ip,即整个网络环境可见 每一个路由器会维护一个NAT映射表 路由器的ip一般是固定的公网ip路由器与把与它相连的主机&#xff1a;私有ip端口号映射…

Java-多线程-ThreadPoolExecutor

前言 前面我们讲解线程的时候&#xff0c;讲到了使用Executors创建线程池&#xff0c;但是它里面所有方法可变的参数太少&#xff0c;不能很好的进行自定义设置&#xff0c;以及以后的扩展&#xff0c;更合理的使用cpu线程的操作&#xff0c;所以使用ThreadPoolExecutor创建线程…

SpringBoot集成webservice

前言 之前在工作中&#xff0c;有时候需要去对接第三方的医院&#xff0c;而很多医院的his系统用的都是老技术&#xff08;WebService&#xff09;。一直在对接webservice接口&#xff0c;却不知道webservice接口是怎么实现的&#xff0c;这一次&#xff0c;我们来一探究竟。 …

Android Compose Bloom 项目实战 (一) : 项目说明与配置

1. 项目介绍 Bloom是谷歌 AndroidDevChallenge (Android 开发挑战赛) 中的一期活动&#xff0c;目的是为了推广Compose&#xff0c;非常适合用来练手&#xff0c;通过这个项目&#xff0c;我们可以很好的入门Compose。本文介绍了如何从零开始&#xff0c;开发这个Compose项目。…

计算机系统结构期末复习

名词解释 程序访问局部性 时间局部性是指最近被访问过的数据很可能再次被访问 空间局部性是指最近被访问过的存储空间的附近空间可能会被访问 计算机体系结构 计算机体系结构是程序员所看到的计算机属性&#xff0c;即概念性结构与功能特性 窗口重叠技术 为了能更简单、更直接…

UE5笔记【五】操作细节——光源、光线参数配置、光照图修复

设置光线重载质量模式为预览&#xff1a;可以加快重构速度。 为了更快速高效的学习&#xff0c;直接查看别人已经建好的素材实例。 在EpicGames启动器中打开示例&#xff0c;找到这个照片级渲染。查看别人建好的效果图。 创建工程以UE5版本打开。进入查看。 观察Baked和碰撞测…

MySQL常用函数大全(面试篇)

本篇文章讲解是是MySQL的函数方法&#xff0c;涵盖所有的MySQL常见的方法。主要介绍了面试常问函数。 一、数字函数二、字符串函数三、日期函数四、MySQL高级函数 &#xff08;一&#xff09;数字函数 1、ABS(x) 返回x的绝对值 2、AVG(expression) 返回一个表达式的平均值&am…

Redis分布式锁

1. 什么是分布式锁 分布式锁指的是&#xff0c;所有服务中的所有线程都去获得同一把锁&#xff0c;但只有一个线程可以成功的获得锁&#xff0c;其他没有获得锁的线程必须全部等待&#xff0c;等到获得锁的线程释放掉锁之后获得了锁才能进行操作。 Redis官网中&#xff0c;set…

中加石墨再冲刺港交所上市:2022年初至今收入为零,陈东尧为CEO

11月18日&#xff0c;中加石墨控股股份有限公司&#xff08;下称“中加石墨”&#xff09;在港交所递交招股书&#xff0c;准备在港交所主板&#xff0c;宏信为独家保荐人。据贝多财经了解&#xff0c;这是中加石墨第二次递表&#xff0c;此前曾于2022年2月28日递交上市申请材料…

通过inode结构体取到次设备号,实现LED灯的亮灭

对Linux来说&#xff0c;设备驱动也是文件。驱动控制硬件的过程&#xff0c;实际上是对驱动文件的读写操作。 对内核来说&#xff0c;如何获取唯一的文件标识呢&#xff1f;当然是通过file结构体中的&#xff0c;inode结构体识别应用层打开的到底是哪一个设备文件。 实验操作及…

数据结构题目收录(二十)

1、含有n个非叶结点的m阶B树中至少包含&#xff08;&#xff09;个关键字。 A&#xff1a;n(m1)B&#xff1a;nC&#xff1a;n(┌\ulcorner┌m/2┐\urcorner┐-1)D&#xff1a;(n-1)(┌\ulcorner┌m/2┐\urcorner┐-1)1 解析 除根结点外&#xff0c;m阶B树中的每个非叶结点至…

mongodump工具安装及使用详解

MongoDB导入导出和备份的命令工具从4.4版本开始不再自动跟随数据库一起安装&#xff0c;而是需要自己手动安装。 官方网站下载链接&#xff1a;Download MongoDB Command Line Database Tools | MongoDB 将下载的压缩包通过工具上传到服务器或者虚拟机中某个路径下并解压&…

ZYNQ图像处理项目——线性神经网络识别mnist

一、线性神经网络识别mnist 线性神经网络其实也可以叫做线性分类器&#xff0c;其实就是没有激活函数的神经网络来对目标进行识别&#xff0c;像支持向量机、多元回归等都是线性的。这边我采用了线性神经网络来识别mnist数字。 我这边是看了一本讲神经网络的书籍&#xff0c;然…

分析高数值孔径物镜的聚焦特性

摘要 高数值孔径的物镜广泛用于光刻、显微等方面。 因此&#xff0c;在仿真聚焦时考虑光的矢量性质是至关重要的。VirtualLab可以支持此类透镜的光线和场追迹分析。通过场追迹分析&#xff0c;可以清楚地显示出由于矢量效应引起的非对称焦点。相机探测器和电磁场探测器可以方便…

【MySQL】Spring Boot项目基于Sharding-JDBC和MySQL主从复制实现读写分离(8千字详细教程)

目录前言一、 介绍二、 主从复制1. 原理2. 克隆从机3. 克隆从机大坑4. 远程登陆5. 主机配置6. 从机配置7. 主机&#xff1a;建立账户并授权8. 从机&#xff1a;配置需要复制的主机9. 测试10. 停止主从同步三、 读写分离1. Sharding-JDBC介绍2. 一主一从3. 一主一从读写分离3.1 …

安服-windowslinux日志分析

目录 windows日志分析 windows事件日志 日志分析工具 Linux日志分析 windows日志分析 windows事件日志 日志分析工具 Linux日志分析 rsyrslog.conf中记录了&#xff0c;这些日志文件存储的位置以及存储的内容是关于什么的日志 其中lastlog比较重要&#xff0c;记录了用户登录…

FRP之入门篇

目录 一、前言 1、概述 2、原理 3、支持功能 4、适用场景 二、环境准备 三、使用 1、安装包下载 2、服务端部署 2.1、上传安装包 2.3、启动服务端 3、客户端部署 3.1、代理服务准备 3.2、上传安装包 3.3、客户端配置 3.4、启动客户端 4、功能验证 一、前言 1、…

Redis在Windows和Linux下的安装方法(超级详细)

Redis的两种不同系统安装1. redis在Windows下的安装2. redis在Linux下的安装1. redis在Windows下的安装 下载安装包(https://github.com/MicrosoftArchive/redis/releases) 下载完后得到安装包找一个自己熟悉的路径就可以进行解压了,我放的是D盘 解压后的文件: 进入到文件夹中…

Java集合(二):Map集合与Collections工具类

目录 Map接口 Map接口的常用方法 删除方法 判断方法 查找方法 增加方法 Map常用方法&遍历操作 HashTable 字典-Dictionary,v> HashMap、HashTable和LinkedHashMap TreeMap 【2】TreeMap-存储自定义数据类型-【内部比较器】 HashMap底层源码 jdk8-源码…

央视春晚临近,主持人李思思被爆离职,知情人火速做出回应

每年的这个时候&#xff0c;中央电视台的春晚&#xff0c;都成为人们热议的话题&#xff0c;不过今年的话题却比较火爆。大众们所关注的央视春晚&#xff0c;第一是参加春晚的明星嘉宾&#xff0c;其次就是参加春晚的节目主持人。 说起央视春晚的主持人&#xff0c;最早要追溯到…