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(1024)
conn.send(b"http/1.1 200 ok\r\n\r\n")
conn.send(b"<h1>hello world</h1>")
conn.close()

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

html是什么

1、超文本标记语言

2、本质上是浏览器可识别的规则,我们按照规则写网页,浏览器根据规则渲染我们的网页,对于不同的浏览器,对同一个标签可能会有不同的解释

3、网页文件的扩展名:.html或.htm

html不是什么

html是一种标记语言,它不是一种编程语言。html使用标签来描述网页

html文档结构

<!DOCTYPE html>
<html lang="zh-CN"
<head>
<meta charset='utf-8'>
<title>css样式优先级</title>
</head>
<body>
</body>
</html>
<! DOCTYPE html>声明为html5文
< html></ html>是文档的开始标记和结束的标记。是html页面的根元素,在它们之间是文档的头部和主体
< head>< /head>定义了html文档的开头部分。它们之间的内容不会在浏览器的文档窗口显示,包含了文档的元(meta)数据
< title>< /title>定义了网页标题,在浏览器标题栏显示
< body>< /body>之间的文本是可见的网页主体内容

对于中文网页需要使用<meta charset='utf8'>声明编码,否则会出现乱码。有些浏览器会设置gbk为默认编码,则你需要设置为<meta charset='gbk>'

html标签格式

html标签是由尖括号包围的关键字,如,

html标签通常是成对出现的,比如

,第一个标签是开始,第二个标签是结束。结束标签会有斜线

也有一部分标签是单独呈现的,比如


<br/ >

标签的语法

<标签名 属性1=“属性值1” 属性2=“属性值2”....>内容部分</标签名>

<标签名 属性1="属性值1" 属性2="属性值2".../>

几个很重要的属性

1、id:定义标签的唯一ID,HTML文档树中唯一

2、class:为html元素定义一个或多个类名(classname)(css样式类名)

3、style:规定元素的行内样式(css样式)

html注释

<!--注释内容-->

标签

<!DOCTYPE>声明必须是html文档的第一行,位于<html>标签之前
<!DOCTYPE>声明不是html标签,它是指web浏览器关于页面使用哪个html版本进行编写的指令

html常用标签

head内常用标签
<title></title>     定义网页标题
<style></style> 定义内部样式表
<script></script> 定义js代码或引入外部js文件
<link/> 引入外部式表文件或网站图标
<meata/> 定义网页原信息

Meta标签

<meta>元素可提供有关页面的元信息(meta-information),针对搜索引擎和更新频度的描述和关键词
<meta>标签位于文档的头部,不包括任何内容
<meta>提供的信息是用户不可见的

meta标签的组成:meta标签共有两个属性,它们分别是http-equiv属性和name属性,不同的属性又有不同的参数值,这些不同的参数值就实现了不同的网页功能

http-equiv属性:相当于http的文件头作用,它可以向浏览器传回一些有用的信息,以帮助正确地显示网页内容,与之对应的属性值为content,content中的内容其实就是各个参数的变量值

指定文档的编码类型
<meta http-equiv="content-Type"charset="utf8">
2秒后跳转到对应的网址,注意引号
<meta http-equiv="refresh" content="2;url=https://www.baidu.com"
告诉ie以最高级模式渲染文档
<meta http-equiv="x-ua-compatible"content="IE=edge"

names属性:主要用于描述网页,与之对应的属性值为content,content中的内容主要是便于搜索引擎机器人查找信息和分类信息用的

<meta name="keywords" content"meta总结,html meta,meta属性,meta属性,meta跳转">
<meta name="description" content="老男孩教育python学院"

body内常用标签

基本标签

<b>加粗</b>
<i>斜体</i>
<u>下划线</u>
<s>删除</s>
<p>段落标签<p>
<h1>标题1</h1>
<h2>标题2</h2>
<h3>标题3</h3>
<h4>标题4</h4>
<h5>标题5</h5>
<h6>标题6</h6>
<br> 换行
<hr> 水平线

特殊字符

空格    &nbsp;
> &gt;
< &lt;
& &amp;
¥ &yen;
版权 &copy;
注册 &reg;

div标签和span标签

div标签用来定义一个块级元素,并无实际的意义。主要通过css样式为其赋予不同的表现

span标签用来定义内联(行内)元素,并无实际的意义。主要通过css样式为其赋予不同的表现

块级元素与行内元素的区别

所谓块元素,是以另外一行开始渲染的元素,行内元素则不需另起一行。如果单独在网页中插入这两个元素,不会对页面产生任何的影响。这两个元素是专门为定义css样式而生的

注意:通常块级元素可以包含内联元素或某些块级元素,但内联元素不能包含块级元素,它只能包含其它内联元素

p标签不能包含块级标签,p标签也不能包含p标签

img标签

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

a标签

超链接标签

所谓的超链接是指从一个网页指向一个目标的连接关系,这个目标可以是另外一个网页,也可以是相同网页上的不同位置,还可以是一个图片,一个电子邮件地址,一个文件,甚至是一个应用程序

<a href="http://www.oldboydu.com" target="_blank">点我</a>

href属性指定目标网页地址。该地址可以有几种类型

​ 1、绝对url------指向另一个站点

​ 2、相对url------指当前站点中确切的路径

​ 3、锚url-----指向页面中的锚

target:

1、_blank表示在新标签页中打开目标网页

​ 2、_self表示在当前标签页中打开目标网页

列表

1、无序列表

<ul type="disc">
<li>第一项</li>
<li>第二项</li>
</ul>

type属性:

​ 1、disc(实心圆点,默认值)

​ 2、circle(空心圆圈)

​ 3、square(实心方块)

​ 4、none(无样式)

2、有序列表

<ol type="1" start="2">
<li>第一项</li>
<li>第二项</li>
</ol>

type属性:

​ 1、1数字列表,默认值

​ 2、A大写字母

​ 3、a小写字母

​ 4、I 大写罗马

​ 5、i小写罗马

3、标题列表

<dl>
<dt>标题1</dt>
<dd>内容1</dd>
<dt>标题2</dt>
<dd>内容1</dd>
<dd>内容2</dd>
</dl>

表格

表格是一个二维数据空间,一个表格由若干行组成,一个行又有若干单元格组成,单元格可以包含文字、列表、图案、表单、数字符号、预置文本和其他的表格等内容

表格最重要的目的是显示表格类数据,表格类数据是指最适合组织为表格格式(即按行和列组织)的数据

<table>
<thead>
<tr>
<th>序号</th>
<th>姓名</th>
<th>爱好</th>
<tr>
</thread>
<tbody>
<tr>
<td>1</td>
<td>LZS</td>
</tr>
<tr>
<td>2</td>
<td>嘿嘿</td>
</tr>
</tbody>
<table>

属性:

​ 1、border:表格边框

​ 2、cellpadding:内边距

​ 3、cellspacing:外边距

​ 4、width:像素百分比(最好通过css来设置长宽)

​ 5、rowspan:单元格竖行跨多少行

​ 6、colspan:单元格横行跨多少列(即合并单元格)

form

功能:表单用于服务器传输数据,从而实现用户与web服务器的交互

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

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

表单属性
accept-charset:规定在被提交表单中使用的字符集(默认:页面字符集)
action:规定向何处提交表单的地址(url)
autocomp lete:规定浏览器应该自动完成表单
enctype:规定被提交数据的编码(默认:url-encoded)如果是上传文件需要将 enctype="multipat/form-data"
method:规定在提交表单时所用的http方法
name:规定识别表单的名称(对于dom使用:document.forms.name)
novalidate:规定浏览器不验证表单
target:规定action属性中地址的目标

表单元素

input
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>

属性说明:

​ multiple:布尔属性,设置后为多选,否则默认单选

​ disabled:禁用

​ selected:默认选中该项

​ value:定义提交时的选项值

label标签

定义:<label>标签为input元素定义标注(标记)

说明:

​ 1、label元素不会向用户呈现任何特殊效果

​ 2、<label>标签的for属性值应当与相关元素的id属性值相同

<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:禁用

前端知识之html的更多相关文章

  1. 移动端 Web 开发前端知识整理

    文章来源: http://www.restran.net/2015/05/14/mobile-web-front-end-collections/ 最近整理的移动端 Web 开发前端知识,不定期更新. ...

  2. web前端知识体系总结

    1. 前言 大约在几个月之前,让我看完了<webkit技术内幕>这本书的时候,突然有了一个想法.想把整个web前端开发所需要的知识都之中在一个视图中,形成一个完整的web前端知识体系,目的 ...

  3. 3 HTML&JS等前端知识系列之javascript的基础

    preface 作为一名运维开发,必须懂得前端知识,比如javascript,dom等等,下面就聊聊javascript. include 数据格式 条件判断,循环流程等. 函数 面向对象 what ...

  4. 自己总结的web前端知识体系大全【欢迎补充】

    1. 前言 大约在几个月之前,让我看完了<webkit技术内幕>这本书的时候,突然有了一个想法.想把整个web前端开发所需要的知识都之中在一个视图中,形成一个完整的web前端知识体系,目的 ...

  5. WEB前端知识体系脑图

    说在开始的话: 我上大学那会,虽说主要是学Java语言,但是web前端也稍微学了一些,那时候对前端也没多在意,因为涉入的不深,可以搞一个差不多可以看的界面就可以了,其他也没过多在意. 因为稍微了解一点 ...

  6. Web前端知识技能大汇总

    项目起源 还记得@jayli 的这幅前端知识结构图么. 图片的形式具有诸多的不便.缺失源图的我们,无法为此图贡献些什么,随着时间的迁移,或许有些技术点会发生改变,所以有了这个GitHub项目.我们可以 ...

  7. 移动Web 开发中的一些前端知识收集汇总

    在开发DeveMobile 与EaseMobile 主题 的时候积累了一些移动Web 开发的前端知识,本着记录总结的目的,特写这篇文章备忘一下. 要说移动Web 开发与传统的PC 端开发,感觉也没什么 ...

  8. web前端知识体系大全

    1. 前言 大约在几个月之前,让我看完了<webkit技术内幕>这本书的时候,突然有了一个想法.想把整个web前端开发所需要的知识都之中在一个视图中,形成一个完整的web前端知识体系,目的 ...

  9. JS前端知识模块大全

    公司前端:小胖提供,表示感谢 1. 基础 HTML, CSS, JS 文档 W3CSCHOOL: http://www.w3schools.com/ MDN: https://developer.mo ...

  10. web前端知识体系小结(转)

    1. 前言 大约在几个月之前,让我看完了<webkit技术内幕>这本书的时候,突然有了一个想法.想把整个web前端开发所需要的知识都之中在一个视图中,形成一个完整的web前端知识体系,目的 ...

随机推荐

  1. ssh排错思路

    telnet远程22端口refused 先netstat  -utnlp  看一下22端口监听状态(一般都不在监听) 然后systemctl  restart sshd 如果有报错,执行sshd  - ...

  2. Struts2学习-struts执行过程简述

    1.web.xml <web-app> <filter> <filter-name>struts2</filter-name> <filter-c ...

  3. H3C虚拟化技术

    一.IRF简单介绍 IRF(Intelligent Resilient Framework,智能弹性架构)是H3C自主研发的软件虚拟化技术.它的核心思想是将多台设备连接在一起,进行必要的配置后,虚拟化 ...

  4. lnmp1.5一键安装包安装lnmpa后,添加站点

    lnmp1.5一键安装包安装lnmpa后,添加站点 (1)添加站点 (2)配置apache配置文件 在/usr/local/apache/conf/vhost文件夹下,修改webApp站点配置文件ap ...

  5. python中可变类型和不可变类型数据的复制

    常见的复制方式有以下5种第1种:通过等号[=]复制 - 不论可变还是不可变数据类型,通过[=]复制后都指向同一个内存地址: - 改变复制后的数据(例子中的anotherStr,anotherList) ...

  6. eclipse无法启动报错、打开Eclipse报错、Eclipse无法打开

    有时候在新的电脑中安装Eclipse的时候总会报一些错误,要么就是环境变量没配好.要么就是JDK没装.要么就是JDK位数与Eclipse位数不同(版本),反正会报一些奇奇怪怪恶心的问题,我第一次装的时 ...

  7. 巨杉Tech | 微服务趋势下的数据库设计与应用简析

    周五(7月12日)巨杉数据库参与了由得到App主办八里庄技术沙龙活动,分享主题是关于分布式数据库架构与实战. 以下就是根据巨杉数据库现场分享的内容进行的分享实录整理. 巨杉数据库简介 巨杉,专注新一代 ...

  8. Python中super的用法【转载】

    Python中super的用法[转载] 转载dxk_093812 最后发布于2019-02-17 20:12:18 阅读数 1143  收藏 展开 转载自 Python面向对象中super用法与MRO ...

  9. 题解【洛谷P1618】 三连击(升级版)

    设三个数分别为n1.n2.n3,因为三个数的比为A:B:C,取一份量i,使得A·i=x,B·i=y,C·i=z(·是*的意思). 所以我们的代码只需要枚举i,并以此判断n1.n2.n3是否为三位数且包 ...

  10. VScode 编辑器快捷键被占用

    在家办公这个开发环境实在是让人受不鸟 .mysql .vscode 对连QQ都没有运行还是不行.排查最终发现了这个家伙—搜狗输入法.微软输入法 这两个把系统快捷键占得那个全 我这个全局搜索死活用不了, ...