第1章 网页的构成

1.1 概念:B/S 与 C/S

1.1.1 现在的软件开发的整体架构主要分为B/S架构与C/S架构:

  • b/s:浏览器/服务器

  • c/s:客户端/服务器

客户端:需要安装在系统里,才可使用

浏览器:浏览网页,读取HTML并显示

服务器:处理浏览器的请求

1.1.2 B/S 与 C/S优劣

  • b/s只要能上网就能使用,因为基本每台电脑都会有浏览器,维护方便。不需要占用本地储存但会占用网络带宽

  • c/s必须安装在系统中,安装成功才可使用。在新的系统中没有安装不能使用,便携性差,维护成本高。需要占用本地储存但不会占用网络带宽

1.1.3 B/S架构技术体系

我们重点是学习BS架构,因为现在企业大多数都是开发B/S架构。而且对于服务端而言,当B/S代码完成后只需要转化为客户端原型即可实现代码的复用。

1.1.3 网页

浏览器中显示的内容,浏览器是网页的展示器。编写好的网页,放在浏览器中即可运行。编写网页我们使用的就是HTML语言。

1.2 网页的构成

摘要 说明
结构(HTML) HTML是网页内容的载体。内容就是网页制作者放在页面上想要让用户浏览的信息,可以包含文字、图片、视频等。
表现(CSS) CSS样式是表现。就像网页的外衣。比如,标题字体、颜色变化,或为标题加入背景图片、边框等。所有这些用来改变内容外观的东西称之为表现。
行为(JavaScript / jQuery) JavaScript是用来实现网页上的特效效果。如:鼠标滑过弹出下拉菜单。或鼠标滑过表格的背景颜色改变。还有购物网站中图片的轮换。可以这么理解,有动画的,有交互的一般都是用JavaScript来实现的

第2章 HTML简介

  • HTML 是用来描述网页的一种语言。
  • HTML 指的是超文本标记语言 (Hyper Text Markup Language)
  • 超文本就是指页面内可以包含图片、链接,甚至音乐、程序等非文字元素
  • HTML 不是一种编程语言,而是一种标记语言 (markup language)
  • 标记语言是一套标记标签 (markup tag),由一组<>包围的关键字
  • HTML网页的后缀名一般为.html
  • HTML 使用标记标签来描述网页

  • HTML文件的结构

    • <html></html>为HTML页面中的根标签,所有的HTML网页中的标签都在<html></html>中。

    • 这里<head>标签用于定义文档的头部,它是所有头部元素的容器。头部元素有<title><script><style><link><meta>等标签。

    • <body></body>标签之间的内容是网页的主要内容,如<h1><p><a><img>等网页内容标签,在这里的标签中的内容会在浏览器中显示出来。

第3章 HTML语法

  • 标签的语法

    • 标签由英文尖括号<>括起来,如:<html>
    • html中的标签一般都是成对出现的,分开始标签和结束标签。结束标签比开始标签多一个 / ,<title></title>;还有一些是自结束标签,如:<br/>
      <div></div>
      <h1></h1>
      <p></p>
      <br/>
      
    • 标签与标签之间是可以嵌套的,但先后顺序必须保持一致,如:<div>里嵌套<p>,那么</p>必须放在</div>的前面。如:<div><p>..</p></div>
      <h1><p>hhh</p></h1>
      
    • 注释是不可以嵌套的,如:<!-- <!-- 注释部分 --> -->
      6-错误:<!-- 注释内容  <!-- 注释内容 -->  -->
      
    • HTML标签不区分大小写,<h1><H1>是一样的,但万维网联盟(W3C)建议小写。因为浏览器解析后都会变为小写
      <h1></h1>
      <H1></H1>
      
  • 元素模型

  • 属性必须有值,且使用""括起来
  • 第4章 HTML的常用标签

4.1 标题标签

<h1>...</h1>
<h2>...</h2>
<h3>...</h3>
<h4>...</h4>
<h5>...</h5>
<h6>...</h6>
  • 语法:<h1></h1>-<h6></h6>
  • 作用:标题
  • 特点:默认占用浏览器的一整行,并且前后要空一行
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body><h1>标题1</h1><h2>标题2</h2><h3>标题3</h3><h4>标题4</h4><h5>标题5</h5><h6>标题6</h6>
</body>
</html>

效果如下:

4.2 段落标签

<p>两个黄鹂鸣翠柳</p>
<p>是否还没女朋友</p>
  • 作用:段落
  • 段落标签也会独占浏览器的一行,而且前后还会空出一行。
  • 使用空的段落标记 <p></p> 去插入一个空行是个坏习惯。用 <br />标签代替它!

4.3 换行标签

<br />:是个自结束标签

  • 作用:换行
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/html">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body><h1>哈哈</br>嘻嘻</h1>
</body>
</html>

4.4 加粗标签

<b>天王盖地虎</b>

4.5 无序列表

<ul type="square"><!-- 定义导航栏 --><li>网页</li><li>新闻</li><li>视频</li><li>贴吧</li>
</ul>

  • ul标签中的type可以指定列表前图形的样式。

    • disc【默认值】:实心圆形
    • square:实心方形
    • circle:空心圆形

4.6 有序列表

<ol type="1"><li>单身久了,坐地铁女孩蹭下肩膀,你连你们的孩子叫什么名字都想好了</li><li>太久没接吻,吃个鸭舌都能感到温柔</li><li>太久没牵手,拿着泡椒凤爪心都会颤抖</li>
</ol>

  • ol标签的type属性可以指定排序方式

    • 1【默认值】:使用阿拉伯数字排序
    • a|A:使用大小写字母排序
    • i|I:使用罗马数字排序

4.7 图片标签

<img alt="" src="" title=""/>
  • alt:图片无法显示时显示的描述性文字
  • src:图片的地址(或路径)。这里分为相对路径和绝对路径。
  • width和height:设置图片的宽度和高度
  • (了解) title:鼠标放在图片上时显示的描述性文字

补充内容:html中的相对路径与绝对路径

相对路径:以当前文件所在的路径为基准.           表示当前文件所在目录..            表示上一级目录资源名        表示当前目录下的资源            ./资源名           ./可以省略使用../返回上一级绝对路径:盘符:\路径1\路径2\文件名         =====>>>     错误(真实路径)http://ip:port/工程名/资源名    =====>>>       正确比如:http://localhost:8080/img/13.jpg

4.8 超链接

<a href="http://www.baidu.com" target="_blank"></a>
  • href:指向一个链接地址

  • target:定义被链接的文档在何处显示。

    • 值为”_self”时在向当前窗口打开新的网页(默认)
    • 值为”_blank”时在新的窗口打开

4.9 转义字符

  • 当显示页面时,浏览器会移除源代码中多余的空格和空行。所有连续的空格或空行都会被算作一个空格。即,HTML 代码中的所有连续的空行(换行)也被显示为一个空格。
  • 在 HTML 中不能使用小于号(<)和大于号(>),这是因为浏览器会误认为它们是标签。
  • 如果想表示多个空格,需要使用如下的转义字符。

说明1:如需显示小于号,我们必须这样写:< 或 <

说明2:使用实体名而不是数字的好处是,名称易于记忆。不过坏处是,浏览器也许并不支持所有实体名称(对实体数字的支持却很好)。

4.10 div标签

<div>...</div>
  • div是html中最灵活最重要的元素,div就像一个容器,里面可以装很多内容。本身没有特殊的语义。

  • 它是块级元素,会占用网页的一行。

  • Div的主要作用:可以通过调整自己的样式来完成网页的复杂布局

  • 它可以把一些独立的逻辑部分(如网页中独立的栏目版块)划分出来,如下图:

<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/html">
<head><meta charset="UTF-8"><title>Title</title>
</head>
<body><div><h2>这是第一部分标题</h2><p>这是第一部分的内容</p></div><div><h2>这是第二部分标题</h2><p>这是第二部分的内容</p></div><div><h2>这是第三部分标题</h2><p>这是第三部分的内容</p></div>
</body>
</html>

4.11 内联框架(了解)

<iframe src="1.html" name=""></iframe>
  • src:一个网页的地址
  • name: iframe的名字,当标签的target属性值为iframe的name时,超链接的目标页面会在iframe中打开

4.12 其它标签

4.12.1 <strong>和<em>标签 (了解)

  • 两者在强调的语气上有区别: 表示强调, 表示更强烈的强调。并且在浏览器中 默认用 斜体 表示, 粗体 表示。

4.12.2 <span>标签

  • 标签是是内联元素,没有语义的,它的作用就是为了设置单独的样式用的。有了它就可以对某段文字里的几个字单独设置样式了。
<span style="background-color: red">span测试</span>

4.12.3 <font>标签

font 标签是字体标签,它可以简单的修改文本样式效果。但现在已经不建议使用了。

<font face="宋体" color="red" size="7" >我是字体标签</font>

4.12.4 分割线标签

<hr /> 标签在 HTML 页面中创建水平分割线。用于分割内容、文章的小节。

补充说明:

**块级元素:**各占据一行,垂直方向排列。块级元素从新行开始结束接着一个断行。width、height、padding、margin有效。

**内联元素:**在一条直线上排列,都是同一行的,水平方向排列。设置width、height、padding、margin无效。

第5章 HTML中的表格

5.1 HTML中的表格

  • 语法:

    • 使用<table></table>标签定义表格,使用<tr></tr>标签定义行,使用<td></td>标签定义单元格(列),使用<th></th>标签定义表头
<!-- 用table标签来创建表格-->
<!-- border用来设置表格的边线-->
<table border="1"><!-- tr表示每一行 --><tr><!-- th表示标题 --><th></th><th></th><th></th></tr><tr><!-- td表示每一行的一个单元格 --><td></td><td></td><td></td><!-- 跨行合并单元格用 rowspan 属性 --><td rowspan="2"></td></tr><tr><td></td><td></td><td></td></tr><tr><td></td><td></td> <!-- 跨列合并单元格用 colspan 属性 --><td colspan="2"></td></tr>
</table>

其中:

  • <table>标记这是一个表格
  • <tr>表示表格的一行
  • <td>表示表格的一列
  • 跨列合并单元格用 colspan 属性
  • 跨行合并单元格用 rowspan 属性
  • 常用属性
    • border :设置表格边框
    • width:设置表格的宽度,单位px
    • height:设置表格的高度,单位px
    • align:设置表格的对齐方式

举例:

第6章 HTML中的表单

6.1 生活中的表单

表单类似生活中的单据,票据,申请表之类的东西,生活中我们经常会填写很多表单,比如入职申请表,入学登记表,员工信息表等。


6.2 表单中的常用标签

1. 表单标签

<form action="这里指定需要提交的位置" method="提交的方式"></form>
  • action表示表单填写完成要提交给的地方。就像我们把入职申请表填写完成后要交给部门经理一样。

  • 提交的方式分为:get 或 post

    • get:是将所有的提交的数据显示在地址栏,长度会有一些限制
    • post:将要提交的数据放在请求体中,在url表单里面没有任何数据
  • 所有可能的属性声明如下:

2. 文本输入框

<!--必须要指定name属性,因为提交数据时,name会-->
<input type="text" name="username"/>

3. 密码输入框

<input type="password" name="pwd"/>

4. 单选框

<!-- 单选框:1.要保证单选按钮单选,必须将它们分为一组,即将它们的name属性值设置为同一个值2.单选按钮提交的是value属性值,所以必须设置value属性值3.通过属性checked="checked"设置默认被选中-->
性别:<input type="radio" name="gender" value="man"><input type="radio" name="gender" value="woman" checked="checked"><br>

5. 复选框

<!-- 复选框:1.必须将所用的复选框分为一组,即将它们的name属性值设置为同一个值2.复选框提交的也是value属性值,所以必须设置value属性值3.通过属性checked="checked"设置默认被选中
-->你的爱好:<input type="checkbox" name="hobby" value="basketball" checked="checked">篮球<input type="checkbox" name="hobby" value="football">足球<input type="checkbox" name="hobby" value="pingpang">乒乓球<br>

6. 下拉列表

<select name="nation"><option value="china">中国</option><option value="america">美国</option><option value="russia">俄罗斯</option><!-- 通过属性selected="selected"设置默认被选中 --><option selected="selected">日本</option><option value="india">印度</option><option value="europe">欧盟</option><!-- 如果option中没有指定value属性值,提交的是option中的文本值如果option中指定了value属性值,提交的是value属性值-->
</select>

7. 重置按钮

<input type="reset" value="按钮上显示的文字">

8.隐藏域

<!--不会在界面显示,但是提交表格时会将`xxx=sss`提交-->
<input type="hidden" name="xxx" value="sss"/>

9.文件域

<!--用于提交文件-->
<input type="file"/>

10. 提交按钮

<input type="submit" value="按钮上的文字">

第7章 补充:标签的常用属性

7.1 常规属性

  • id:标签的唯一编号,识别码

    • 一个文档中所有的元素id不应该有重复,id属性可以不设置
  • class : 标签的分类,用来识别一组标签。

    • 我们可以指定任意几个标签为一组(兴趣小组),也就是多个标签class值可以相同,标签的人工分类制度。
  • name:标签的名字

    • 这和标签名(TagName)不一样,每个标签的关键字是标签名,而name相当于起别名,多个标签的别名也可以相同
  • style:标签的风格

    • 用来指定标签的样式,如背景颜色,边框等。我们css中会统一学习

7.2 事件属性

  • **事件:**简单的说,是指我们点击、选中、鼠标划过等一些用户操作。

    我们的标签也会被用户操作,比如鼠标经过,按钮被点击。这些事件也是作为标签属性的一部分。就像我们现实中实验室化学品上的标签一样,会被修改,撕掉,时间长了风干,褪色,字体模糊等。

  • 标签常见的事件属性有:

    • onblur:失去焦点
    • onclick:鼠标点击
    • onbdclick:双击
    • onmouseover:鼠标移动到元素上
  • 还有很多事件,具体可以查看W3School文档中关于【html事件属性】的部分。**这些事件属性是我们学习js的时候要详细介绍的。**主要功能就是这个事件触发后执行什么功能。

作业:

1.创建首页index.html,在首页中创建两个超链接我要登录和我要注册

2.创建pages目录,里面放置登录、注册、登录成功、注册成功页面;且每个页面中设置一个回首页的超链接

3.使用JavaScript为登录注册进行非空验证 (JavaScript之后再做)

4.设计如下的表格

Java全栈(四)web网页技术:1.HTML相关推荐

  1. 【Java全栈】Java全栈学习路线及项目全资料总结【JavaSE+Web基础+大前端进阶+SSM+微服务+Linux+JavaEE】

    目录 jdk api 1.8中文版 jdk api 1.8_google.CHM 零:Java 全栈知识体系 第一阶段:JavaSE 一,程序应用(★★) 二,面向对象程序设计基础(★★★) 面向对象 ...

  2. Java全栈(三)数据库技术:3.数据库之JDBC上

    第一章 JDBC概述 之前我们学习了JavaSE,编写了Java程序,数据保存在变量.数组.集合等中,无法持久化,后来学习了IO流可以将数据写入文件,但不方便管理数据以及维护数据的关系: 后来我们学习 ...

  3. Java全栈体系路线(总结不易,持续更新中)

    文章目录 Java全栈工程师 <font color=orange>Java基础 基础语法 面向对象 工具类 集合框架 序列化 反射机制 注解 文件处理 设计模式 视频教程 文档教程 练习 ...

  4. 超全面Java全栈知识体系,定期更新(最近更新:2022.8.2)...

    前言 最新Java全栈知识系统,定期更新..... 本套知识体系涵盖六大块: 一.前端基础 涵盖HTML5.CSS3.JavaScript.jQuery.Layui.Bootstrap等: 二.Jav ...

  5. java 前端工作内容_java前端、java后端、java全栈工作主要内容是什么?哪个薪资高?...

    摘要 最近,听了一场关于java全栈工程师职位的简介说明,里面很清楚的说明了一下前端,后端,全栈都是做什么工作的.其实,想做这个行业,就应该了解职能以及技能需求,这样学习才能更高效.我知道一些刚刚入行 ...

  6. 全栈工程师薪水_2020 Java 全栈工程师进阶路线图,不可错过

    技术更新日新月异,对于初入职场或者刚开始学习的同学来说,经常会困惑该往那个方向发展,这一点所有刚开始学习的人基本都有这个体会的. 刚开始学习 Java 那会,最大的问题就是不知道该学什么,以及学习的顺 ...

  7. Java全栈(二)JavaSE:25.File类和IO流

    1 java.io.File类 1.1 概述 File类是java.io包下代表与平台无关的文件和目录,也就是说如果希望在程序中操作文件和目录都可以通过File类来完成,File类能新建.删除.重命名 ...

  8. 【Java全栈学习笔记:第一阶段:JavaSE】:Java入门及环境搭建

    Java全栈课程网站: KuangStudy JavaSE课程地址: 狂神说Java 参考书籍:Java大学实用教程(第四版) 目录 Java入门及环境搭建 Java帝国的诞生 Java发展 Java ...

  9. Java全栈学习路线-拭去心尘

    一.JavaSE(熟练使用IDEA(私下学习可以,但进公司做项目不要使用破解版)和Eclipse) 辅助语言:C++(面向对象语言,偏向底层,语法和Java类似,我个人偏好C++为辅助语言)+pyth ...

  10. 2019 Java 全栈工程师进阶路线图,一定要收藏

    技术更新日新月异,对于初入职场的同学来说,经常会困惑该往那个方向发展,这一点松哥是深有体会的. 我刚开始学习 Java 那会,最大的问题就是不知道该学什么,以及学习的顺序,我相信这也是很多初学者经常面 ...

最新文章

  1. pytorch lstm crf 代码理解 重点
  2. phpStorm无法使用svn1.8的解决办法
  3. php之快速入门学习-17(PHP 命名空间)
  4. 【Storm篇】--Storm并发机制
  5. php遍历删除目录下文件,PHP遍历删除文件夹已经文件内的所有文件
  6. Facebook上的一道题,超过50万的评论和1万3500次分享
  7. java线程间的协调
  8. Git笔记(19) 生成SSH公钥
  9. 5 好看的字体样式_嫌电脑字体样式太少,这款小软件几百种的样式随便你选择...
  10. 数学建模笔记——评价类模型(三)
  11. Build-dep linux 知乎,apt-get安装和apt-get build-dep有什么区别?
  12. 计算机网络 8 报文交换和分组交换2
  13. Win7电脑遇到蓝屏,并报错:IRQL NOT LESS OR EQUAL
  14. 行业集中度数据(2000-2020年 )
  15. 前端vs图片:0 为什么需要重视图片
  16. java可以开发安卓app吗,Java开发者必看
  17. 个税计算--Java
  18. Hack The Box--Forest 靶场训练
  19. 谈一谈对JS闭包的理解
  20. Echarts官网展示

热门文章

  1. 建设银行职员以电子邮件形式外泄客户信息,非法牟利3万余元
  2. 风控决策流程的优化与规则调优
  3. macbook pro 2018款 外接移动硬盘装win10
  4. 【星球精选】Obsidian 中的 excalibrain 插件:免费的 theBrain ?
  5. 那些人工智能明星公司都在搞什么? AI从业者必知必会!
  6. 挨踢项目求生法则-设计篇
  7. Mac系统调整Launchpad图标大小
  8. 无监督学习之Kmeans算法
  9. oracle两个列累加,Oracle-累加功能,累加百分比
  10. 使用STM32标准库构建VSCode+gcc+openOCD开发STM32