0
点赞
收藏
分享

微信扫一扫

前端知识 — HTML内容

白衣蓝剑冰魄 2022-01-20 阅读 57

HTML介绍

Web服务本质

import socket

sk = socket.socket()

sk.bind(("127.0.0.1", 8080))
sk.listen(5)


while True:
    conn, addr = sk.accept()
    data = conn.recv(8096)
    conn.send(b"HTTP/1.1 200 OK\r\n\r\n")
    conn.send(b"<h1>Hello world!</h1>")
    conn.close()

浏览器发请求 --> HTTP协议 --> 服务端接收请求 --> 服务端返回响应 --> 服务端把HTML文件内容发给浏览器 --> 浏览器渲染页面

## HTML是什么?

```html
HTML是构造网页的骨架===> 几乎所有的网站都是由HTML构建而成

网页文件的扩展名:.html或.htm
	该类型文件主要的打开方式为浏览器形式

HTML: 超文本标记语言
# 不是一门编程语言,没有任何的逻辑,只有固定的标记功能

HTML简介

<h1>哈哈哈</h1>
<a href="url">点击跳转</a>
<img src='url'/>
"""
文本到了浏览器删改你会自动被渲染成不同的样式
	h1渲染成一级标题
	a渲染成链接标签
	img渲染成图片
引出: HTML标签语法
"""
HTML标签的分类
1. 双标签(有头有尾)
	<a></a>
2. 自闭合标签(单标签)
	<img/>

HTML文档结构
<html>
	<head>编写给浏览器查看的内容</head>
	<body>编写展示给用户查看的内容</body>
</html>
'''在使用编程工具创建的时候会自动编写文档结构'''

HTML语法注释
	<!--当行注释-->	
<!--
多行注释
多行注释
-->
'''在编写时,编程工具也有注释快捷键ctrl+?'''
注释是代码之母

如何创建及展示

1. 以pycharm为例
	右键new点击HTML FILE创建即可
2. 如何打开展示
	右上方会提供多种浏览器(注意需要提前下载)
# 编写HTML标签的时候,不需要自己写大括号小括号 ,在写标签名称+tab键即可自动补全(所有支持编写html文件的工具内部自带的插件语法功能)

head内常见标签

html		定义文档开始和结束的标记  文档主体主体
title		定义网页标题
style		内部支持css代码
script		内部支持编写js代码    还可以通过src属性导入外部js文件
link		通过hret属性引入外部的css文件	
meta		定义网页原信息					
				keywords关键字搜索
				description网页描述信息
			与之对应的属性值content,content中的内容主要是便于搜索引擎机器人查找信息和分类信息用的。

body内基本标签

h1~h6		标题标签
p			段落标签
b			加粗
i			斜体
u			下划线
s			删除线
br			换行
hr			水平分割线
""" 有时候相同的样式  可能有多种标签可以实现"""

标签分类
	分类1: 单双标签
	分类2: 块儿级标签		h1~h6	p
		   独占一行(可以通过css实现不占一行)
		   行内标签		u	i	s	b
		  				自身文本多大就占多大

特殊符号

&nbsp;		空格
&gt;		大于号
&lt;		小于号
&amp;		&符号
&yen;		羊角符
&copy;		版权符
&reg;		注册

常见标签

# 网页在制作之前需要提前布局好

布局标签
	div			块级标签
	span		行内标签

"""
标签是可以嵌套的    但是需要遵循以下规律
	块级标签	可以无限制的嵌套块级标签和行内标签
		特例:p 标签虽然是块级标签但是也不能嵌套块级标签
	行内标签不能嵌套块儿级标签	可以嵌套行内标签
	
"""

img标签
<img src="图片的路径" alt="图片未加载成功时的提示" title="鼠标悬浮时提示信息" width="宽" height="高(宽高两个属性只用一个会自动等比缩放)">

	
1. a标签:链接标签
		用法1: 通过href属性指定网址(URL)点击跳转
				跳转过程中有两种方式
				1. 当前页面跳转		target="_self"		默认
				2. 新建页面跳转		target="_blank"
					<a href="http://www.oldboyedu.com" target="_blank" >点我</a>
		用法2:锚点功能
				通过href属性指定标签的id值点击即可跳转到对应位置
					"""
					绝对URL - 指向另一个站点(比如 href="http://www.jd.com)
					相对URL - 指当前站点中确切的路径(href="index.htm")
					锚URL - 指向页面中的锚(href="#top")
					"""

""" URL : 统一资源定位符,也被称为网页地址"""
		URL举例
		http://www.sohu.com/stu/intro.html
		http://222.172.123.33/stu/intro.html
		
		URL地址由4部分组成
		第1部分:为协议:http://、ftp://等 
		第2部分:为站点地址:可以是域名或IP地址
		第3部分:为页面在站点中的目录:stu
		第4部分:为页面名称,例如 index.html
		各部分之间用“/”符号隔开。

2. img标签:图片标签		<img src="1.jpg"/>
	src属性指定图片地址
		可以是本地的地址也可以是网络上的地址
		alt属性编写文本
		用于在图片无法加载出来的情况下的提示信息
	title属性编写文本
		用于鼠标悬浮在图片上之后提示的文本信息
	height、width属性编写像素
		用于调整图片的尺寸
			注意: 在调整或修改一个另外一个自动等比例缩放

标签的两个重要属性

1. id属性		个体查找
	类似于标签的身份证号	在同一个html页面上id不能重复

2. class属性		群体查找
	类似于python面向对象中的类的继承
	可以将多个标签划为一类
		<h1 class='c1'></h1>
		<p class='c1'></p>
	并且一个标签可以有很多类
	<h1 class='c1 c2 c3'></h1>
	<p class='c1 c8 c9'></p>

列表标签

1. 无序列表
# 前面没有用于表示数字顺序的提示
<ul>
<li>111</li>
<li>222</li>
<li>333</li>
</ul>
	"""
	type属性:

	disc(实心圆点,默认值)
	circle(空心圆圈)
	square(实心方块)
	none(无样式)
	"""
"""网页上有规则排列的多个横向或者竖向内容  几乎都是无序列表"""

2.有序列表
<ol>
<li>111</li>
<li>222</li>
<li>333</li>
</ol>
	"""
	ype属性:

		1 数字列表,默认值
		A 大写字母
		a 小写字母
		Ⅰ大写罗马
		ⅰ小写罗马
	"""

3. 标题列表
<dl>
<dt>标题1</dt>
  <dd>内容1</dd>
<dt>标题2</dt>
  <dd>内容1</dd>
  <dd>内容2</dd>
</dl>

表格标签

# 表格标签的格式
	<table>
	<thead></thead>		表头
	<tbody></tbody>		表单
	</table>

 # tr标签
	 tr就表示一行

# th标签
	在表头的字段名称

# td标签
	普通的单元格数据
例如:

<table>
    <thead>
        <tr>
            <th>姓名</th>
            <th>密码</th>
            <th>年龄</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>qq</td>
            <td>123</td>
            <td>18</td>
        </tr>
    </tbody>
</table>

border : 表格边框
cellpandding : 内边框
cellspacing : 外边框
width :像素 百分比
rowspan : 单元格书竖跨多少行
colspan : 单元格横跨多少行(即合并单元格)

form

功能:

表单用于向服务器传输数据,从而实现用户与Web服务器的交互

表单能够包含input系列标签,比如文本字段、复选框、单选框、提交按钮等等。

表单还可以包含textarea、select、fieldset和 label标签。

表单属性

accept-charset	规定在被提交表单中使用的字符集(默认:页面字符集)。
action			规定向何处提交表单的地址(URL)(提交页面)。
autocomplete	规定浏览器应该自动完成表单(默认:开启)。
enctype			规定被提交数据的编码(默认:url-encoded)。
method			规定在提交表单时所用的 HTTP 方法(默认:GET)。
name			规定识别表单的名称(对于 DOM 使用:document.forms.name)。
novalidate		规定浏览器不验证表单。
target			规定 action 属性中地址的目标(默认:_self)。

表单元素
基本概念:
HTML表单是HTML元素中较为复杂的部分,表单往往和脚本、动态页面、数据处理等功能相结合,因此它是制作动态网站很重要的内容。
表单一般用来收集用户的输入信息
表单工作原理:
访问者在浏览有表单的网页时,可填写必需的信息,然后按某个按钮提交。这些信息通过Internet传送到服务器上。
服务器上专门的程序对这些数据进行处理,如果有错误会返回错误信息,并要求纠正错误。当数据完整无误后,服务器反馈一个输入完成的信息。

Django接收上传文件代码


from django.conf.urls import url
from django.shortcuts import HttpResponse


def upload(request):
    print("request.GET:", request.GET)
    print("request.POST:", request.POST)

    if request.FILES:
        filename = request.FILES["file"].name
        with open(filename, 'wb') as f:
            for chunk in request.FILES['file'].chunks():
                f.write(chunk)
            return HttpResponse('上传成功')
    return HttpResponse("收到了!")

urlpatterns = [
    url(r'^upload/', upload),
]

input

元素会根据不同的 type 属性,变化为多种形态。

type属性值			   表现形式				对应代码
	text		 	  单行输入文本			<input type="text" />
	password		  密码输入框	    	<input type="password" />
	date		  	  日期输入框			<input type="date" />
	checkbox		  复选框				<input type="checkbox" checked="checked"  />
	radio			  单选框				<input type="radio" />
	submit			  提交按钮			<input type="submit" value="提交" />
	reset			  重置按钮				<input type="reset" value="重置"  />
	button			  普通按钮				<input type="button" value="普通按钮"  />
	hidden			  隐藏输入框				<input type="hidden"  />
	file			  文本选择框			<input type="file"  />

属性说明:

  • name:表单提交时的“键”,注意和id的区别

  • value:表单提交时对应项的值

     type="button", "reset", "submit"时,为按钮上显示的文本年内容
     type="text","password","hidden"时,为输入框的初始值
     type="checkbox", "radio", "file",为输入相关联的值
    
  • checked:radio和checkbox默认被选中的项

  • readonly:text和password设置只读

  • disabled:所有input均适用

select标签

<form action="" method="post">
  <select name="city" id="city">
    <option value="1">北京</option>
    <option selected="selected" value="2">上海</option>
    <option value="3">广州</option>
    <option value="4">深圳</option>
  </select>
</form>

属性说明:

  • multiple:布尔属性,设置后为多选,否则默认单选
  • disabled:禁用
  • selected:默认选中该项
  • value:定义提交时的选项值

label标签

定义:

  1. label 元素不会向用户呈现任何特殊效果。
<form action="">
  <label for="username">用户名</label>
  <input type="text" id="username" name="username">
</form>

textarea多行文本

<textarea name="memo" id="memo" cols="30" rows="10">
  默认内容
</textarea>

属性说明:

  • name:名称
  • rows:行数
  • cols:列数
  • disabled:禁用
举报

相关推荐

0 条评论