HTML详细教程

news2024/12/26 21:44:39

文章目录

  • 前言
  • 一、快速开发网站最简模板
  • 二、HTML标签
    • 1.编码
    • 2.title
    • 3.标题
    • 4.div和span
    • 5.超链接
    • 6.图片
    • 7.列表
    • 8.表格
    • 9.input系列
    • 10.下拉框
    • 11.多行文本
  • 三、GET方式和POST方式
    • 1.GET请求
    • 2.POST请求

前言

HTML的全称为超文本标记语言,是一种标记语言,是网站开发前端的一部分。它包括一系列标签,通过这些标签可以将网络上的文档格式统一,使分散的Internet资源连接为一个逻辑整体。且HTML与编程语言无关,是一门独立的语言。本篇博客将介绍HTML的基本内容。

一、快速开发网站最简模板

  1. 在Terminal中输入pip install flask
  2. 主要内容:
  • 在Pycharm中创建.py文件,不用HMTL文件
from flask import  Flask,render_template

app = Flask(__name__)

#创建了/show/info网址和index的对应关系
#以后用户在浏览器上访问该网址,网站自动执行index
@app.route("/show/info")
def index():
    return "中国联通"

if __name__ == '__main__':
    app.run()
  • 在Pycharm中创建.py文件,且用HMTL文件(存放在template文件夹中)

.py文件

from flask import  Flask,render_template

app = Flask(__name__)

#创建了/show/info网址和index的对应关系
#以后用户在浏览器上访问该网址,网站自动执行index
@app.route("/show/info")
def index():
    #return "中国联通"
    #默认去当前项目目录下的templates文件夹中找index
    return render_template("index.html")

if __name__ == '__main__':
    app.run()

.html文件

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>我的国家</title>
</head>
<body>
    <h1>中国</h1>
</body>
</html>

文件布局:
在这里插入图片描述

  1. 运行后即可得到网址,加上/show/info即可访问

二、HTML标签

1.编码

 <meta charset="UTF-8">

2.title

  • 功能:表示网站的名字
  • 只在head里面
 <title>我的国家</title>

3.标题

<h1>一级标题</h1>
<h2>二级标题</h2>
<h3>三级标题</h3>
<h4>四级标题</h4>
<h5>五级标题</h5>
<h6>六级标题</h6>

4.div和span

  • 功能:实现划分板块
  • div:一个占一整行,块级标签
  • span:自己多大占多少,行内标签,内联标签
  • 可以进行嵌套
<div>内容</div>
<span>内容</span>

5.超链接

  • 功能:实现网站跳转
  • 跳转到别人网站:网址必须全
  • 跳转到自己网站:可以不需要前缀,比如:“/get/news”
<a href="网站">内容</a>

6.图片

  • 如果是自己的图片,要把图片放在static文件夹(自己创建)中
  • 如果是别人的图片,要注意是否有防盗链
<img src="图片地址">
  • 设置图片的高度和宽度
<!-- 直接设置像素 -->
<img src="图片地址" style="height:100px; width:200px;"/>

<!-- 按照原图比例缩放 -->
<img src="图片地址" style="height:10%; width:20%;"/>

7.列表

<ul>
   <li>内容</li>
   <li>内容</li>
   <li>内容</li>
</ul>

8.表格

  • thead是表头
  • tbody是表主体
  • <table border=“1”>添加边框
<table>
	<thead>
		<tr>  <th>ID</th>  <th>姓名</th>  <th>年龄</th>  </tr>
	</thead>

	<tbody>
		<tr>  <th>1</th>  <th>小明</th>  <th>20</th>  </tr>
		<tr>  <th>2</th>  <th>小红</th>  <th>20</th>  </tr>
		<tr>  <th>3</th>  <th>小亮</th>  <th>20</th>  </tr>
	</tbody>
</table>

9.input系列

  • 输入普通文本
<input type="text">
  • 输入加密文本
<input type="password">
  • 输入文件
<input type="file">
  • 单选
<input type="radio" name="n1"><input type="radio" name="n1">
  • 多选
<input type="checkbox">  篮球
<input type="checkbox">  足球
<input type="checkbox">  排球
  • 按钮
<!-- 普通按钮 -->
<input type="button" value="提交">

<!-- 提交表单 -->
<input type="submit" value="提交">
  • 提交
<form method="方式get或者post" action="提交地址">
	iput系列
	按钮
</form>

10.下拉框

  • 单选
<select>
	<option>北京</option>
	<option>上海</option>
	<option>深圳</option>
</select>
  • 多选
<select multiple>
	<option>北京</option>
	<option>上海</option>
	<option>深圳</option>
</select>

11.多行文本

  • <textarea row=“3”>可是设置行数
<textarea>内容</textarea>

三、GET方式和POST方式

两种方式都要导入request方法

1.GET请求

  • 实现:URL方法、表单提交
  • 现象:向后台传入数据会拼接在URL上

.py文件

from flask import Flask, render_template, request

app = Flask(__name__)

@app.route('/register', methods=['GET'])
def register():
    return render_template('register.html')

@app.route("/do/register", methods=['GET'])
def do_register():
    get_info = request.args
    return get_info

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5200, debug=True)

.html文件

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <h1>用户注册</h1>
    <form action="/do/register" method="get">
        <div>
            用户名: <input type="text" name="username">
        </div>
        <div>
            密码: <input type="password" name="passwd">
        </div>
        
        <input type="submit" value="提交">
    </form>
</body>
</html>

2.POST请求

  • 实现:表单提交
  • 现象:提交数据不显示在URL上,而是在请求体中

.py文件部分

@app.route("/post/register", methods=['POST'])
def post_register():
    get_info = request.form
    return get_info

.html文件部分

<body>
    <h1>用户注册</h1>
    <form action="/post/register" method="post">
        <div>
            用户名: <input type="text" name="username">
        </div>
        <div>
            密码: <input type="password" name="passwd">
        </div>
        <input type="submit" value="提交">
    </form>
</body>

  • 表单数据提交优化:添加name和value属性
  • 在控制台输出数据,依靠导入的request方法
@app.route("/post/register", methods=['POST'])
def post_register():
    get_info = request.form

    username = request.form.get("username")
    passwd = request.form.get("passwd")
    sex = request.form.get("sex")
    hobby_list = request.form.getlist("hobby")
    city = request.form.get("city")
    more = request.form.getlist("textarea")

    print(username, passwd, sex, hobby_list, city, more)

    return get_info
  • 两种方法可以整合:
@app.route("/post/register", methods=['GET','POST'])

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

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

相关文章

Spring Boot(六十九):利用Alibaba Druid对数据库密码进行加密

1 Alibaba Druid简介 之前介绍过Alibaba Druid的,章节如下,这里就不介绍了: Spring Boot(六十六):集成Alibaba Druid 连接池 这章使用Alibaba Druid进行数据库密码加密,在上面的代码上进行修改,这章只介绍密码加密的步骤。 目前越来越严的安全等级要求,我们在做产品…

RuoYi-Vue开源项目2-前端登录验证码生成过程分析

前端登录验证码实现过程 生成过程分析 生成过程分析 验证码的生成过程简单概括为&#xff1a;前端登录页面加载时&#xff0c;向后端发送一个请求&#xff0c;返回验证码图片给前端页面展示 前端页面加载触发代码&#xff1a; import { getCodeImg } from "/api/login&q…

JavaWeb请求响应

目录 一请求响应 1.1请求响应概述&#xff1a; 1.2网页接口与发送 1.2.1简单参数传输 1.2.2实体参数 1.2.3数组集合参数 ​编辑1.2.4集合参数 1.2.5日期时间的参数 1.2.6Json参数 1.2.7路径参数 小结 1.3响应请求 二请求响应小demo 源码链接&#xff1a; 一请求响…

愈宠引领宠物大健康生态新时代——打造临床医养与新膳食营养的完美融合

愈宠(VetCurePet)创立于2023年&#xff0c;隶属于中创集宠(深圳)科技有限公司&#xff0c;是一家集研发、生产、销售为一体的综合型现代化企业。愈宠致力于打造宠物大健康生态系统&#xff0c;以临床医养新膳食营养自効愈宠健康&#xff0c;旗下产品涵盖宠物膳食食品烘焙处方粮…

蓝桥杯嵌入式2021年第十二届第二场省赛主观题解析

1 题目 2 解析 /* Includes ------------------------------------------------------------------*/ #include "main.h" #include "adc.h" #include "tim.h" #include "gpio.h"/* Private includes ----------------------------…

sql join

-- 创建事实表 CREATE TABLE product_facts (id INT AUTO_INCREMENT PRIMARY KEY,product_name VARCHAR(255),price DECIMAL(10, 2) );-- 插入数据 INSERT INTO product_facts (product_name, price) VALUES (Product A, 100.00); INSERT INTO product_facts (product_name, pr…

【GPT-SOVITS-03】SOVITS 模块-生成模型解析

说明&#xff1a;该系列文章从本人知乎账号迁入&#xff0c;主要原因是知乎图片附件过于模糊。 知乎专栏地址&#xff1a; 语音生成专栏 系列文章地址&#xff1a; 【GPT-SOVITS-01】源码梳理 【GPT-SOVITS-02】GPT模块解析 【GPT-SOVITS-03】SOVITS 模块-生成模型解析 【G…

分布式搜索引擎(3)

1.数据聚合 **[聚合&#xff08;](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations.html)[aggregations](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations.html)[&#xff09;](https://www.ela…

旅游系统-软件与环境

一. 软件 1.Navicat、phpstudy、Idea、Vsode 参考 网盘链接 二.配置文件 1.NodeJS、JDK、Mysql 参考 网盘链接 注意点&#xff1a; 1.Mysql 切记需要环境变量配置 2.数据库密码要好记点的&#xff0c;别乱设 3.环境变量配置的路径要能找到 三.安装运行 1.下载网盘内的软件&am…

html系列:按钮被样式图片挡着了,无法点击怎么办

​ 背景 在开发中会遇到一些奇奇怪怪的需求&#xff0c;比如在按钮上要显示一个样式图片&#xff0c;同时还要能不影响按钮的点击使用&#xff1b;这时候&#xff0c;设置好了样式&#xff0c;按钮无法点击怎么办&#xff1f; 在查阅资料的时候找到了解决方案。 解决方案 …

kafka集群介绍

介绍 kafka是一个高性能、低延迟、分布式的消息传递系统&#xff0c;特点在于实时处理数据。集群由多个成员节点broker组成&#xff0c;每个节点都可以独立处理消息传递和存储任务。 路由策略 发布消息由key、value组成&#xff0c;真正的消息是value&#xff0c;key是标识路…

前端面试题01(css)

前端面试题01&#xff08;css&#xff09; 文章目录 前端面试题01&#xff08;css&#xff09;1、CSS选择器的优先级2、隐藏元素的方法有哪些3、px和rem的区别4、重绘和重排的区别5、水平垂直居中的方式6、CSS的那些属性可以继承7、预处理器 &#x1f389;写在最后 hello hello…

2023安洵杯 ezjava

2023安洵杯 ezjava 附件地址&#xff1a;https://github.com/D0g3-Lab/i-SOON_CTF_2023 先看依赖&#xff1a; <dependency><groupId>org.postgresql</groupId><artifactId>postgresql</artifactId><version>42.3.1</version><…

Google云计算原理与应用(三)

目录 五、分布式存储系统Megastore&#xff08;一&#xff09;设计目标及方案选择&#xff08;二&#xff09;Megastore数据模型&#xff08;三&#xff09;Megastore中的事务及并发控制&#xff08;四&#xff09;Megastore基本架构&#xff08;五&#xff09;核心技术——复制…

Transformer的前世今生 day02(神经网络语言模型

神经网络语言模型 使用神经网络的方法&#xff0c;去完成语言模型的两个问题&#xff0c;下图为两层感知机的神经网络语言模型&#xff1a; 以下为预备概念 感知机 线性模型可以用下图来表示&#xff1a;输入经过线性层得到输出 线性层 / 全连接层 / 稠密层&#xff1a;假…

【C++ leetcode 】双指针问题

1. 183. 移动零 题目 给定一个数组 nums&#xff0c;编写一个函数将所有 0 移动到数组的末尾&#xff0c;同时保持非零元素的相对顺序。 请注意 &#xff0c;必须在不复制数组的情况下原地对数组进行操作。 题目链接 . - 力扣&#xff08;LeetCode&#xff09; 画图 和 文字 分…

无尘室设计常用参数与选型

无尘车间(Clean Room)是指空气无尘度达到规定级别的受控空间。其功能是把空气中的微粒子、有害空气、细菌等污染物排除室外,并将室内的无尘度、温度、湿度、室内压力、气流速度与气流分布、噪音、振动、照明及静电控制在某一需求范围内。无尘车间最主要的作用在于控制产品所…

《前端系列》之前端学习路线

目录 1 前言2 前端学习路线2.1 入门阶段2.1.1 HTML2.1.2 CSS2.1.3 JavaScript2.1.4 网络基础 2.2 基础阶段2.2.1 前端框架2.2.2 深入JavaScript2.2.3 ES62.2.4 工程化知识 2.3 进阶阶段2.3.1 CSS2.3.2 Javascript2.3.3 单元测试2.3.4 性能优化 3 总结 1 前言 在技术更新迭代发…

如何在没有备份的情况下恢复 Android 上已删除的照片?

丢失 Android 设备上的珍贵照片可能是一场噩梦&#xff0c;尤其是在没有备份的情况下。无论是意外删除图像还是由于Android 崩溃而丢失图像&#xff0c;一想到它们可能会永远消失就令人沮丧。幸运的是&#xff0c;有多种方法可以在 Android 上恢复已删除的照片。 如何在没有备份…

C语言中内存函数的使用

memcpy函数的使用和模拟实现 memcpy的使用 函数使用说明&#xff1a; • 函数memcpy从source的位置开始向后复制num个字节的数据到destination指向的内存位置。 • 这个函数在遇到 \0 的时候并不会停下来。 • 如果source和destination有任何的重叠&#xff0c;复制的结…