超文本标记语言,用于搭建网页的结构。
网页的组成:
HTML、CSS、JavaScript;其他多媒体内容:图片、视频、音频、超级链接等;所有的网页文件都是真实的、物理存在的文件.
程序员将网页源文件上传到服务器进行存储,用户后期通过客户端(如浏览器软件)发送HTTP请求 到服务器,服务器接收请求后进行响应,将存储的相关文件通过HTTP响应回传到用户本地客户端, 最终通过客户端将网页文件进行渲染,显示出最终用户看到的网页效果
客户端(Client)也叫用户端,指的是普通用户使用的终端,客户端有多种形式,比如最常用的就是 浏览器、app等,而web开发最主要的客户端形式还是浏览器。
浏览器(Browser),是一种用户上网搜索、查看信息资源的应用程序。
功能:用于发送HTTP请求到服务器,接收服务器发回的HTTP响应,渲染HTML网页。
IE/Edge——Trident——IE内核
FireFox ——Gecko—— Firefox内核
Safari ——Webkit
Chrome ——Webk it→Blink ——统称为Chromium内核或Chrome内核
Opera ——Presto→Webk it→Blink
推荐:使用Chrome浏览器。(渲染效果好、市场占有率高、自带开发者调试工具)
HTTP请求
HTTP响应
h1-h6 :标题标签的作用是给标签内部的元素内容添加对应级别标题的语义,不负责样式,样式由CSS负责。
<h1>
一级标题
</h1>
p : 双标签,内部只能放文本、图片、表单元素,作用是给标签内部的内容添加一个完整段落的语义,不负责内容自动换行的样式,换行效果是由CSS决定的。
<P>
段落
</P>
br : 单标签,没有建立新的段落的语义,只是简单的进行强制换行。
<br /> <!--强制换行-->
均为双标签,内部只能书写文字。
img : 单标签,本身相当于一个特殊的文本,作用是在指定位置插入一张图片,常用的插入图片类型:jpg、png、gif。
<!--width与height设置属性:只设置了其中一个,另一个会等比例变换;如果两个都设置,按照设置值加载。-->
<img src="smile01.jpg" width="200" height="100">
<img src="images/tupian/smile03.jpg" border="20">
<img src="../images/smile01.jpg" title="点击查看原网页" alt="这是一张微笑的表情" >
指目标文件与HTML文件位于同一级,直接书写文件名+后缀名;
<img src="smile01.jpg">
指目标文件在与HTML文件同一级的文件夹的内部,需要先查找文件夹名称,然后通过关闭 符号/进入文件夹查找里面的文件;如果有多层文件夹,需要/进入多层。
<img src="images/smile02.png">
<img src="images/tupian/smile03.jpg">
指目标文件在HTML文件所在文件夹的更上一级,需要跳出当前文件夹到上一层,路径写法 利用…/表示跳出一级,如果跳出多级书写多次…/,直到找到文件。
<img src="../../smile04.jpg" />
<img src="../images/smile01.jpg" />
例如从c盘或者d盘出发查找图片,书写时以c:/开头,后续类似子级查找写法直至找到 目标文件。
<img src="C:/Users/teacher/Documents/images/smile02.png" />
要查找的文件是来自网络资源,路径写法以http://开头。
<img src="http://img3.imgtn.bdimg.com/it/u=1084243323,278941980&fm=26&gp=0.jpg" />
<audio src="audio.mp3" controls="controls"></audio>
<video src="video.mp4" controls="controls" ></video>
a : 双标签,在指定位置添加超级链接,提供用户进行点击和跳转,可以实现两种跳转——跨页面跳转、页面内跳转。
全称hypertext reference,超文本引用,用于规定链接的目标地址;属性值为链接目标的路径地址, 可以使用相对路径或网址形式的绝对路径。
_self:——默认值,表示跳转的页面在当前窗口打开,不会打开新的窗口;
_blank——空白的,表示跳转的页面在新窗口打开。
<!--在当前窗口跳转-->
<a href="目标地址" target="_self">链接内容</a>
<!--在新开窗口跳转-->
<a href="目标地址" target="_blank">链接内容</a>
提示文字,该属性用于给用户进行提示,该链接的功能是什么,提高用户的体验。
<a href="目标地址">链接内容</a>
<a href="http://www.lagou.com" target="_blank">拉勾</a>
<a href="smile.html" title="点击查看源网页"><img src="images/smile02.png" /></a>
设置锚点:也就是设置跳转目标位置,有两种设置方式。
在目标位置找到任意一个标签,给它添加id属性,id的属性值必须是唯一的。
<h2 id="mubiao1">目标位置</h2>
在目标位置添加一个空的标签,只设置一个name属性,name属性值设置 方式与id相同,也必须是唯一的。
<a name="mubiao2"></a>
添加链接:链接到锚点,在需要点击的位置设置标签,给a的href属性设置属性值为#id属性值或者 #加a的name属性值。
<a href="#mubiao1">点击文本</a>
<a href="#mubiao2">点击文本</a>
<a href="new.html#mubiao">点击文本</a>
ul:unordered list,表示定义一个无序列表的大结构。
li:list item,列表项,定义的是无序列表内的某一项。
<h3>中国四大名著</h3>
<ul>
<li>
<h4>红楼梦</h4>
<ul>
<li>林黛玉</li>
<li>薛宝钗</li>
<li>王熙凤</li>
</ul>
</li>
<li>
<h4>西游记</h4>
<ul>
<li>孙悟空</li>
<li>沙和尚</li>
<li>猪八戒</li>
</ul>
</li>
</ul>
注意事项:
ol:ordered list,表示定义一个有序的列表的大结构。
li:list item,定义的是有序列表的每一项。
<ol>
<li>列表项1</li>
<li>列表项2</li>
<li>列表项3</li>
<li>列表项4</li>
</ol>
dl:definition list,表示定义一个自定义列表的大结构。
dt:definition term,表示定义自定义列表中的一个主题或者术语。
dd:definition description,定义解释项,表示描述或解释前面的定义主题。
<dl>
<dt>张三</dt>
<dd>
<p>城市:北京</p>
<p>年龄:18</p>
</dd>
</dl>
<dl>
<dt>张三</dt>
<dd>
<p>城市:北京</p>
<p>年龄:18</p>
</dd>
</dl>
注意事项:
分割、区域、跨度的意思,俗称大盒子;双标签,是最经典的容器级标签,内部可以放置任意内容。
作用:多用于划分网页区域,进行结构布局。一般将相关的内容使用div包裹起来,整体设 置大的布局效果
小区域、小跨度的意思,俗称小盒子;也是双标签,容器级标签。
作用:在不改变整体效果的情况下,可以辅助进行局部调整。
table:表格,定义的是整个的表格大结构。
tr:table rows,表格的行,定义的是表格由多少行组成。
td:table data,表格数据,也叫表格单元格,定义的是每一行内部的单元格。
表格的单元格之间有默认的空隙,会导致双线边框。
<!--在css中设置td {width:100px;}-->
<table border="1" style="border-collapse: collapse;">
<tr>
<td colspan="2">1</td>
<td rowspan="2">2</td>
<td colspan="2">3</td>
</tr>
<tr>
<td>4</td>
<td rowspan="2">5</td>
<td>6</td>
<td rowspan="2">7</td>
</tr>
<tr>
<td rowspan="2">8</td><!--跨行合并2行-->
<td>9</td>
<td>10</td>
</tr>
<tr>
<td>11</td>
<td colspan="2">12</td><!--跨列合并2列-->
<td>13</td>
</tr>
</table>
1 | 2 | 3 | ||
4 | 5 | 6 | 7 | |
8 | 9 | 10 | ||
11 | 12 | 13 |
<table border="1" style="border-collapse: collapse;">
<caption>各地区固定资产投资情况</caption>
<thead>
<tr>
<th rowspan="2">地区</th>
<th colspan="2">按总量分</th>
<th colspan="2">按比重分</th>
</tr>
<tr>
<th>自年初累计(亿元)</th>
<th>比去年同期增长</th>
<th>自年初累计</th>
<th>去年同期</th>
</tr>
</thead>
<tbody>
<tr>
<td>全国</td>
<td>1245</td>
<td>9.6</td>
<td>9.6</td>
<td>11</td>
</tr>
<tr>
<td>全国</td>
<td>1245</td>
<td>9.6</td>
<td>9.6</td>
<td>11</td>
</tr>
</tbody>
</table>
地区 | 按总量分 | 按比重分 | ||
---|---|---|---|---|
自年初累计(亿元) | 比去年同期增长 | 自年初累计 | 去年同期 | |
全国 | 1245 | 9.6 | 9.6 | 11 |
全国 | 1245 | 9.6 | 9.6 | 11 |
表单是用来收集用户输入信息的。
在HTML中,一个完整的表单通常由表单域、提示信息和表单控件(也称为表单元素)3个 部分构成。
form : 双标签,容器级标签,是一个功能性标签,填写的表单信息要想正确的提交到后台服务器,必须放在一个form标签之内。
单标签,本身相当于一个特殊的文本。需要通过标签属性实现各种功能。
type=“text”——单行文本输入框,定义提供用户输入的单行文本的输入框,不能输入多行文字。 常用value属性定义默认的输入文字。
<input type="text" value="默认输入文本" >
type=“password”——密码输入框,定义提供用户输入的密码框。 password 字段中的字符会被做掩码处理(显示为星号或实心圆)。
<input type="password">
type=“radio”——单选框,定义提供用户点击选择的单选框。
单选框一般都是成组出现,多个单选框组成一组选择的情况。
同一组单选框之间必须是互斥的关系,通过给同一组单选框都设置相同的name属性值实现。
<input type="radio" name="sex" checked="checked"/> 男
<input type="radio" name="sex" /> 女
type=“checkbox”——复选框,定义提供用户点击选择的多选框。 复选框允许用户在有限数量的选项中选择零个或多个选项。 同一组复选框最好也设置相同的name属性。
<input type="checkbox" name="hobby" checked="checked"/> 唱歌
<input type="checkbox" name="hobby" /> 代码
<input type="checkbox" name="hobby" /> 运动
checked=“checked”——定义选框控件的默认被选中项
type=“button”——普通按钮,没有任何特殊功能。
type=“reset”——重置按钮,将一个form中填写的表单内容清空,恢复成默认。
type=“submit” ——提交按钮,将填写数据提交到form中指定的后台服务器,并重置清空form中填写的信息。
type=“image”——图像形式的按钮,默认与提交按钮的效果相同,使用的图片需要利用src属性查找正确路径。
type=“file”——定义输入字段和"浏览"按钮,供文件上传
type=“hidden”——定义隐藏的输入字段
name=“自定义”——定义控件的名称
value=“自定义”——定义控件的输入文本
size=数字——定义控件的宽度
maxlength=数字——定义允许输入的最多字符数
双标签,本身相当于一个特殊的文字;
制作可以输入多行文本的区域;
文本域可以设置默认输入的文字,在双标签之间书写默认文字。
textarea有两个标签属性,可以设置显示区域大小。
rows:行,属性值是数字,数字是几表示文本框显示的最大行数,如果超过了行数, 会被隐藏并且出现滚动条。
cols:列,属性值是数字,数字是几,表示在出现滚动条之后,每一行显示的最大字节数(一个汉字按2字节计算)。
<!--一行最多15个汉字,最多10行-->
<textarea cols="30" rows="10">
默认输入文字
</textarea>
下拉菜单需要至少两个标签完成结构;
select:选择,表示定义下拉菜单整体结构。
option:选项,表示定义下拉菜单的每一项。
两个标签都是双标签,文本级标签。
关系:select>option,option可以有任意多项。
默认情况下,选中的是第一项。 下拉菜单可以通过给标签设置selected属性,属性值为selected,更改默认选中项。
<select>
<option>广州</option>
<option selected="selected">北京</option>
<option>重庆</option>
<option>上海</option>
</select>
optgroup : 双标签,可对选项进行分组
关系:select>optgroup>option
optgroup 可以设置一个label属性,表示给这一组选项添加一个分组标签名,分组标签optgroup 是不能被点击选择的。
<select>
<optgroup label="国内">
<option>广州</option>
<option selected="selected">北京</option>
</optgroup>
<optgroup label="国外">
<option>伦敦</option>
<option>巴黎</option>
</optgroup>
</select>
给表单元素设置id属性。
然后将需要绑定的其他内容用label标签包裹。
给label标签设置for属性,属性值为绑定的表单元素的id属性值。
<input type="checkbox" name="hobby" id="sport" />
<label for="sport">运动</label>
如果绑定内容和表单元素写在一起,可以化简绑定写法。 直接使用标签将绑定内容与表单元素一起进行嵌套。
<label><input type="radio" name="sex" />男</label>
<form>
<p>
用户名:<input type="text" value="请输入您的用户名">
</p>
<p>
密码:<input type="password">
</p>
<p>
性别: <input type="radio" name="sex" id="nan" checked="checked"> <label for="nan">男</label>
<label><input type="radio" name="sex">女 </label>
</p>
<p>
爱好:<label><input type="checkbox" name="hobby" checked="checked">绘画</label>
<label><input type="checkbox" name="hobby">音乐</label>
<label><input type="checkbox" name="hobby">代码</label>
</p>
<p>
文件:<input type="file" multiple="multiple">
</p>
<p>
自我介绍:<textarea cols="30" rows="5">请输入300字的自我介绍</textarea>
</p>
<p>
城市:<select>
<optgroup label="国内">
<option>北京</option>
<option>上海</option>
<option selected="selected">广州</option>
</optgroup>
<optgroup label="国外">
<option>伦敦</option>
<option>东京</option>
<option>纽约</option>
</optgroup>
</select>
</p>
<p>
<input type="button" value="普通按钮">
<input type="submit" value="提交按钮">
<input type="reset" value="重置按钮">
<input type="image" src="images/btn.png">
</p>
</form>
在普通文字书写时,有一些特殊符号不能直接书写(例如 连续的空格),或者符号具有特殊功能也不能直接书写 (例如<>符号)。 可以使用一些HTML提前预留好的替换字符进行书写,这 些替换字符叫做字符实体。
<!--空格--> < <!--小于--> > <!--大于-->
& <!--和号--> "<!--引号--> ¥<!--元-->
€<!--欧元--> §<!--小节--> ©<!--版权-->
®<!--注册商标-->
文章浏览阅读1k次。通过使用ajax方法跨域请求是浏览器所不允许的,浏览器出于安全考虑是禁止的。警告信息如下:不过jQuery对跨域问题也有解决方案,使用jsonp的方式解决,方法如下:$.ajax({ async:false, url: 'http://www.mysite.com/demo.do', // 跨域URL ty..._nginx不停的xhr
文章浏览阅读2k次。关于在 Oracle 中配置 extproc 以访问 ST_Geometry,也就是我们所说的 使用空间SQL 的方法,官方文档链接如下。http://desktop.arcgis.com/zh-cn/arcmap/latest/manage-data/gdbs-in-oracle/configure-oracle-extproc.htm其实简单总结一下,主要就分为以下几个步骤。..._extproc
文章浏览阅读1.5w次。linux下没有上面的两个函数,需要使用函数 mbstowcs和wcstombsmbstowcs将多字节编码转换为宽字节编码wcstombs将宽字节编码转换为多字节编码这两个函数,转换过程中受到系统编码类型的影响,需要通过设置来设定转换前和转换后的编码类型。通过函数setlocale进行系统编码的设置。linux下输入命名locale -a查看系统支持的编码_linux c++ gbk->utf8
文章浏览阅读750次。今天准备从生产库向测试库进行数据导入,结果在imp导入的时候遇到“ IMP-00009:导出文件异常结束” 错误,google一下,发现可能有如下原因导致imp的数据太大,没有写buffer和commit两个数据库字符集不同从低版本exp的dmp文件,向高版本imp导出的dmp文件出错传输dmp文件时,文件损坏解决办法:imp时指定..._imp-00009导出文件异常结束
文章浏览阅读143次。当下是一个大数据的时代,各个行业都离不开数据的支持。因此,网络爬虫就应运而生。网络爬虫当下最为火热的是Python,Python开发爬虫相对简单,而且功能库相当完善,力压众多开发语言。本次教程我们爬取前程无忧的招聘信息来分析Python程序员需要掌握那些编程技术。首先在谷歌浏览器打开前程无忧的首页,按F12打开浏览器的开发者工具。浏览器开发者工具是用于捕捉网站的请求信息,通过分析请求信息可以了解请..._初级python程序员能力要求
文章浏览阅读7.6k次,点赞2次,收藏6次。@Service标注的bean,类名:ABDemoService查看源码后发现,原来是经过一个特殊处理:当类的名字是以两个或以上的大写字母开头的话,bean的名字会与类名保持一致public class AnnotationBeanNameGenerator implements BeanNameGenerator { private static final String C..._@service beanname
文章浏览阅读6.9w次,点赞73次,收藏463次。1.前序创建#include<stdio.h>#include<string.h>#include<stdlib.h>#include<malloc.h>#include<iostream>#include<stack>#include<queue>using namespace std;typed_二叉树的建立
文章浏览阅读7.1k次。在Asp.net上使用Excel导出功能,如果文件名出现中文,便会以乱码视之。 解决方法: fileName = HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8);_asp.net utf8 导出中文字符乱码
文章浏览阅读2.1k次,点赞4次,收藏23次。第一次实验 词法分析实验报告设计思想词法分析的主要任务是根据文法的词汇表以及对应约定的编码进行一定的识别,找出文件中所有的合法的单词,并给出一定的信息作为最后的结果,用于后续语法分析程序的使用;本实验针对 PL/0 语言 的文法、词汇表编写一个词法分析程序,对于每个单词根据词汇表输出: (单词种类, 单词的值) 二元对。词汇表:种别编码单词符号助记符0beginb..._对pl/0作以下修改扩充。增加单词
文章浏览阅读773次。我在使用adb.exe时遇到了麻烦.我想使用与bash相同的adb.exe shell提示符,所以我决定更改默认的bash二进制文件(当然二进制文件是交叉编译的,一切都很完美)更改bash二进制文件遵循以下顺序> adb remount> adb push bash / system / bin /> adb shell> cd / system / bin> chm..._adb shell mv 权限
文章浏览阅读6.8k次,点赞12次,收藏125次。1. 单目相机标定引言相机标定已经研究多年,标定的算法可以分为基于摄影测量的标定和自标定。其中,应用最为广泛的还是张正友标定法。这是一种简单灵活、高鲁棒性、低成本的相机标定算法。仅需要一台相机和一块平面标定板构建相机标定系统,在标定过程中,相机拍摄多个角度下(至少两个角度,推荐10~20个角度)的标定板图像(相机和标定板都可以移动),即可对相机的内外参数进行标定。下面介绍张氏标定法(以下也这么称呼)的原理。原理相机模型和单应矩阵相机标定,就是对相机的内外参数进行计算的过程,从而得到物体到图像的投影_相机-投影仪标定
文章浏览阅读2.2k次。文章目录Wayland 架构Wayland 渲染Wayland的 硬件支持简 述: 翻译一篇关于和 wayland 有关的技术文章, 其英文标题为Wayland Architecture .Wayland 架构若是想要更好的理解 Wayland 架构及其与 X (X11 or X Window System) 结构;一种很好的方法是将事件从输入设备就开始跟踪, 查看期间所有的屏幕上出现的变化。这就是我们现在对 X 的理解。 内核是从一个输入设备中获取一个事件,并通过 evdev 输入_wayland