【JavaWeb】HTML+CSS

1 Web概念概述

JavaWeb是使用Java语言开发基于互联网的项目

软件架构

  • cs架构:优点【资源加载快、用户体验好】、缺点【安装、部署、维护麻烦】
  • bs架构:优点【开发、安装、部署、维护简单】、缺点【应用过大,用户体验会受影响、对硬件有要求】

1.1 BS架构

资源分类

  • 静态资源:用静态网页开发技术发布的资源(HTML、CSS、JavaScript)。所有用户访问,得到的结果一样。如果用户请求静态资源,那么服务器会将静态资源发送给浏览器,浏览器内置的解析引擎可以展示静态资源。
  • 动态资源:使用动态网页即时发布的资源。不同用户在同一页面的显示结果可能不一样。如:JSP、Servlet、PHP、ASP。如果用户请求动态资源,服务器会执行动态资源,然后将动态资源转换为静态资源再发送给服务器。
    在这里插入图片描述

2 HTML

2.1 基本介绍

概念:Hyper Text Markup Language:超文本标记语言,是最基础的网页开发语言。
超文本:用超链接的方式,将各种不同空间的文字信息组织在一起的网状文本。
标记语言:由标签构成的语言。<标签名称>如html、xml。标记语言不是编程语言。

html的实现

  • 标签分为围堵标签(有开始和结束)标签可以嵌套,不同标签的开始和结束之间不能交叉。
  • 自闭标签(开始和结束在一起,如:<br/>)
  • 开始标签中可以定义属性,属性由键值对构成,值要用引号引起来
  • 不区分大小写但建议用小写

2.2 HTML标签

文件标签

  • html:根标签
  • head:头标签,用于指定html文档的一些属性,引入外部的资源
  • title:标题标签
  • body:体标签
  • <!DOCTYPE html>:HTML5中定义该文档是html文档

文本标签

  • <br>换行
  • <hr>水平线
  • <p>段落
  • <h1>~<h6>标题
  • < ! - - 注释 - - >
  • font:已经废弃,具有属性color=" "、width单位是像素px(取值是数值或相对于父元素的百分比)、size、face字体
  • center:居中 已废弃

图片标签
-<img src='xxx.jpg'/ align='right' alt='XXX' width='500' height='500'>

列表标签
有序列表的属性 type展示不同的样式:罗马Ⅰ字母A start属性指定从几开始排序
无序列表的属性 type可以为disc、square、circle

    <ol type="A" start="3"><li>第一个</li><li>第二个</li><li>第三个</li></ol><ul type="square"><li>无序</li><li>无序</li><li>无序</li></ul>

链接标签

  • 默认在本页打开链接【可以是网页资源也可以是本地资源】
    -<a href="http://www.baidu.com">click me</a>
  • 新建页面打开链接
  • <a href="http://www.baidu.com" target="_blank" >click me</a>
    target【默认是_self】
  • 启动邮件客户端发邮箱
  • <a href="maito:xxxxxx@xxxx.com">contact me</a>

  • div:每个div占满一整行 块级标签
  • span:文本信息在一行展示 行内标签 内联标签
    语义化标签:没有样式 提高程序可读性 可以和css一起定义样式
  • header
  • footer
    表格标签
    <table border="1" width="50%" cellpadding="0" cellspacing="0" bgcolor="#5f9ea0" align="center"><caption>学生信息表</caption><tr bgcolor="red" align="center"><th>编号</th><th>姓名</th><th>成绩</th></tr><tr><td>1</td><td>张三</td><td>100</td></tr><tr><td>2</td><td>李四</td><td>100</td></tr></table>

合并行 合并列

    <table border="1" width="50%" cellpadding="0" cellspacing="0" bgcolor="#ffdab9" align="center"><tr><th rowspan="2">编号</th><th>姓名</th><th>成绩</th></tr><tr><td>张三</td><td>100</td></tr><tr><td>2</td><td colspan="2">李四</td></tr></table>

表单标签
概念:用于采集用户输入的数据

<form>:定义表单的采集范围

  • 属性:action="xxx"表单提交地址 method="get/post"提交方式
    表单中的数据想要被提交,必须指定name属性
    get请求参数会在地址栏显示 封装在协议行中 请求参数的长度有限制 不安全
    post请求参数不会在地址栏显示 会封装在协议体中 请求参数的长度无限制 安全

表单项标签

  • input:可以通过type属性值 改变元素展示的样式。value显示默认值 placeholder显示提示信息
  • select:下拉列表
  • textarea:文本域
  • radio:单选框name要一致 否则是定义了多个单选框。要给单选框指定返回值value。checked指定默认值
  • checkbox:复选框 checked指定默认值
  • label:执行输入项的文字描述信息,加for属性可以和input的id对应 点击label会让input获取焦点
  • file:文件选择框
  • select:下拉列表

注册页面案例
在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>注册页面</title>
</head>
<body><form action="#" method="post"><table border="1" align="center" width="500"><tr><td><label for="username">用户名</label></td><td><input type="text" name="username" id="username"></td></tr><tr><td><label for="password">密码</label></td><td><input type="password" name="password" id="password"></td></tr><tr><td><label for="email">邮箱</label></td><td><input type="email" name="email" id="email"></td></tr><tr><td><label for="name">姓名</label></td><td><input type="name" name="name" id="name"></td></tr><tr><td><label for="phone">手机号</label></td><td><input type="text" name="phone" id="phone"></td></tr><tr><td><label>性别</label></td><td><input type="radio" name="gender" value="male"><input type="radio" name="gender" value="female"></td></tr><tr><td><label for="birthday">出生日期</label></td><td><input type="date" name="birthday" id="birthday"></td></tr><tr><td><label for="checkcode">验证码</label></td><td><input type="text" name="chekcode" id="checkcode"><img src="verify_code.jpg"></td></tr><tr><td colspan="2" align="center"><input type="submit" value="注册"></td></tr></table></form>
</body>
</html>

3 CSS

cascading style sheet 层叠样式表,用于页面美化和布局控制
优势:

  • 功能强大
  • 将内容展示和样式控制分离
  • 【降低耦合度,分工协作更容易,提高开发效率】

3.1 CSS的使用

css和html的结合方式

  • 内联样式:在标签内使用style属性指定css代码,不推荐使用。作用域是当前标签。
  • <div style="color:red;">hello</div>
  • 内部样式:在head标签内定义style标签,标签体内容就是css代码。作用域只能是当前页面。
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>div{color: peachpuff;}</style>
</head>
<body>
<div>哈哈哈哈哈</div>
</body>
</html>
  • 外部样式:将CSS抽取到外部文件,在head标签内定义link标签引入外部资源文件
div{color: aqua;
}
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><link rel="stylesheet" href="../css/a.css">
</head>
<body>
<div>哈哈哈哈哈</div>
</body>
</html>

css语法

选择器{属性名1:属性值;属性名2:属性值;
}

选择器:用来筛选具有相似特征的元素

注意:

  • 每一对属性需要使用分号隔开,最后一堆可以不加

3.2 基本选择器

  • id选择器:选择器具体的id属性值的元素,建议在一个html页面中使用
    -#id属性值{ }
  • 元素选择器:选择具有相同标签名称的元素
    -标签名称{ }
  • 类选择器:选择具有相同class属性值的元素
  • .class属性值{ }

优先级 id > 元素 > 类

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>.cls1{color: gray;}#div1{color: red;}div{color: gold;}</style>
</head>
<body>
<div id="div1">哈哈哈哈哈</div>
<div>呵呵呵呵呵呵</div>
<p class="cls1">嘻嘻嘻嘻嘻嘻嘻嘻</p>
</body>
</html>

在这里插入图片描述

3.3 扩展选择器

  • 选择所有元素
  • *{ }
  • 并集选择器
  • 选择器1,选择器2{ }
  • 子选择器:筛选选择器1元素下的选择器2元素
  • 选择器1 选择器2{ }
  • 父选择器:筛选选择器2的父元素选择器1
  • 选择器1 > 选择器2{ }
  • 属性选择器:选择元素名称,属性名=属性值的元素
  • 元素名称[属性名="属性值"]{ }
  • 伪类选择器:选择一些元素具有的状态
  • 元素: 状态{ }

3.4 属性

  • 字体、文本:【color】【font-size】【line-height】【text-align】

  • 背景:【background】

  • 边框:【border】

  • 尺寸:【width】【height】

  • 盒子:控制布局【margin外边距】【padding内边距 默认情况下内边距会影响整个盒子的大小 设置盒子的属性 让width height不变box-sizing: border-box】【float浮动】

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><style>div{border: 1px solid red;}.div1{width: 100px;height: 100px;/*外边距*//*margin: 50px;*/}.div2{width: 200px;height: 200px;/*内边距*/padding: 50px;box-sizing: border-box;}.div3{/*浮动*/float: left;}.div4{float: left;}.div5{float: right;}</style>
</head>
<body>
<div class="div2"><div class="div1"></div>
</div>
<div class="div3">aaa</div>
<div class="div4">bbb</div>
<div class="div5">ccc</div>
</body>
</html>

美化版的注册页面
在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>用户注册</title><style>*{margin: 0;padding: 0;box-sizing: border-box;}body{background: url("register_bg.png") no-repeat;}.layout{width: 900px;height: 500px;border: 8px solid #EEEEEE;background-color: white;margin: auto;margin-top: 80px;}.left{/*border:1px solid red;*/float: left;margin: 15px}.left > p:first-child{color: #FFD036;size: 100px;}.left > p:last-child{color: #A6A6A6;size: 100px;}.center{/*border: 1px solid red;*/float: left;}.right{/*border: 1px solid red;*/float: right;margin: 15px;}.right > p:first-child{color: #A6A6A6;font-size: 15px;}.right > p > a{color: pink;font-size: 15px;}.td_left{width: 100px;text-align: right;height: 45px;}.td_right{padding-left: 50px;}#username,#password,#name,#email,#birthday,#phone,#checkcode{width: 251px;height: 32px;border: 1px solid #A6A6A6;border-radius: 5px;padding-left: 10px;}#checkcode{width: 110px;}#img_check{height: 32px;vertical-align:middle;}#sub{width: 150px;height: 40px;background-color: #FFD036;border: 1px;}</style>
</head>
<body>
<div class="layout"><div class="left"><p>用户注册</p><p>user register</p></div><div class="center"><div class="form"><form action="#" method="post"><table border="0" align="center" width="500"><tr><td class="td_left"><label for="username">用户名</label></td><td class="td_right"><input type="text" name="username" id="username" placeholder="请输入用户名"></td></tr><tr><td class="td_left"><label for="password">密码</label></td><td class="td_right"><input type="password" name="password" id="password" placeholder="请输入密码"></td></tr><tr><td class="td_left"><label for="email">邮箱</label></td><td class="td_right"><input type="email" name="email" id="email" placeholder="请输入邮箱"></td></tr><tr><td class="td_left"><label for="name">姓名</label></td><td class="td_right"><input type="name" name="name" id="name" placeholder="请输入姓名"></td></tr><tr><td class="td_left"><label for="phone">手机号</label></td><td class="td_right"><input type="text" name="phone" id="phone" placeholder="请输入手机号"></td></tr><tr><td class="td_left"><label>性别</label></td><td class="td_right"><input type="radio" name="gender" value="male"><input type="radio" name="gender" value="female"></td></tr><tr><td class="td_left"><label for="birthday">出生日期</label></td><td class="td_right"><input type="date" name="birthday" id="birthday"></td></tr><tr><td class="td_left"><label for="checkcode">验证码</label></td><td class="td_right"><input type="text" name="chekcode" id="checkcode"><img src="verify_code.jpg" id="img_check"></td></tr><tr><td colspan="2" align="center"><input type="submit" value="注册" id="sub"></td></tr></table></form></div></div><div class="right"><p>已有账号?<a href="#">立即登录</a></p></div>
</div></body>
</html>

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

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

相关文章

深度推荐系统2019年度阅读收藏清单

一只小狐狸带你解锁NLP/ML/DL秘籍正文来源&#xff1a;深度传送门今天是2020年新年工作第一天&#xff0c;祝大家开工大吉&#xff0c;新的一年一切顺利&#xff0c;诸事躺赢&#xff01;深度传送门也跟很多号主一样&#xff0c;花了点时间分类整理了一下阅读清单&#xff08;包…

手把手教你协方差分析的SPSS操作

手把手教你协方差分析的SPSS操作 2017-04-27 手把手教你协方差分析的SPSS操作 一、问题与数据 某研究将73例脑卒中患者随机分为现代理疗组&#xff08;38例&#xff09;和传统康复疗法组&#xff08;35例&#xff09;进行康复治疗&#xff0c;采用Fugl-Meyer运动功能评分法&a…

我对DevOps的理解

一、DevOps的意图 究竟什么是DevOps? 要想回答这个问题&#xff0c;首先要明确DevOps这个过程参与的人员是谁&#xff1f;即开发团队和IT运维团队&#xff01;那么&#xff0c;DevOps的意图是什么呢&#xff1f;即在两个团队之间&#xff0c;建立良好的沟通和协作&#xff0c;…

【JavaWeb】JavaScript基础篇+高级篇

文章目录1 介绍2 ECMAScript2.1 基本语法2.2 基本对象3 BOM3.1 window窗口对象3.2 location地址栏对象3.3 history历史记录对象4 DOM4.1 概念4.2 核心DOM4.2.1 Document对象4.2.2 Element对象4.2.3 节点对象4.2.4 案例&#xff1a;动态表格4.2.5 内容切换4.2.6 样式设置5 事件5…

万万没想到,我的炼丹炉玩坏了

一只小狐狸带你解锁NLP/ML/DL秘籍作者&#xff1a;夕小瑶前记众所周知&#xff0c;夕小瑶是个做NLP的小可爱。虽然懂点DL框架层知识&#xff0c;懂点CUDA和底层&#xff0c;但是我是做算法的哎&#xff0c;平时debug很少会遇到深度学习框架层的bug&#xff08;上一次还是三年前…

Reactor三种线程模型与Netty线程模型

一、Reactor三种线程模型 1.1、单线程模型 单个线程以非阻塞IO或事件IO处理所有IO事件&#xff0c;包括连接、读、写、异常、关闭等等。单线程Reactor模型基于同步事件分离器来分发事件&#xff0c;这个同步事件分离器&#xff0c;可以看做是一个单线程的while循环。下图描述了…

图解Transformer-一篇文章看懂transformer

原文标题&#xff1a;The Illustrated Transformer 原文链接&#xff1a;https://jalammar.github.io/illustrated-transformer/ 论文地址&#xff1a;https://arxiv.org/abs/1706.03762 前言 Attention这种机制最开始应用于机器翻译的任务中&#xff0c;并且取得了巨大的成就…

【JavaWeb】前端框架之Bootstrap

文章目录1 概念2 快速入门3 响应式布局4 CSS样式和JS插件1 概念 BootStrap是前端开发框架&#xff0c;基于HTML、CSS、JavaScript。 优点&#xff1a; 定义了很多CSS样式和JS插件&#xff0c;可以直接使用。响应式布局&#xff1a;同一套页面可以兼容不同分辨率的设备。 2 快…

号外号外,第一届沙雕项目竞赛,这些项目以数万Star惨获提名

一只小狐狸带你解锁NLP/ML/DL秘籍正文来源&#xff1a; Python空间 好看的皮囊千篇一律&#xff0c;有趣的灵魂没有底线。作为全球最大的同性交友网站&#xff0c;GayHub GitHub 上不止有鲜活的代码&#xff0c;秃头的算法&#xff0c;还有很多拥有有&#xff08;sha&#…

尼克 | 从专家系统到知识图谱

本文节选自尼克老师的《人工智能简史》第 3 章&#xff1a;从专家系统到知识图谱。从第一个专家系统 DENDRAL 到语义网再到谷歌的开源知识图谱&#xff0c;对知识图谱的发展历程进行了全面回顾和深度点评。尼克&#xff0c;早年曾任职哈佛和惠普&#xff1b;后创业投资&#xf…

Google 资深软件工程师 LeetCode 刷题笔记首次公开

BAT 等国内的一线名企&#xff0c;在招聘工程师的过程中&#xff0c;对算法和数据结构都会重点考察。但算法易学难精&#xff0c;我的很多粉丝技术能力不错&#xff0c;但面试时总败在算法这一关&#xff0c;拿不到好 Offer。但说实话&#xff0c;数据结构和算法花点时间&#…

论文浅尝 | Learning with Noise: Supervised Relation Extraction

Luo B, Feng Y, Wang Z, et al. Learning withNoise: Enhance Distantly Supervised Relation Extraction with Dynamic TransitionMatrix[C]// Meeting of the Association for Computational Linguistics.2017:430-439.链接&#xff1a;http://www.aclweb.org/anthology/P/P1…

项目架构之传统三层架构和领域模型三层架构

一、架构之传统三层架构 传统三层架构是一种软件架构&#xff0c;是一种典型的、基于贫血模型的、面向过程的JavaWeb分层方式。该架构分为以下三个层次&#xff1a; 数据访问层&#xff08;DAL - Data Access Layer&#xff09;即对包括数据库在内的数据源进行操作的部分。业务…

限定域文本语料的短语挖掘(Phrase Mining)

一只小狐狸带你解锁NLP/ML/DL秘籍正文来源&#xff1a;丁香园大数据前言短语挖掘&#xff08;Phrase Mining&#xff09;的目的在于从大量的文本语料中提取出高质量的短语&#xff0c;是NLP领域中基础任务之一。短语挖掘主要解决专业领域&#xff08;如医疗、科技等&#xff09…

论文浅尝 | Hike: A Hybrid Human-Machine Method for Entity Alignment

Zhuang Y,Li G, Zhong Z, et al. Hike: A Hybrid Human-Machine Method for Entity Alignmentin Large-Scale Knowledge Bases[C]// ACM, 2017:1917-1926. ( CIKM 2017 )论文链接&#xff1a;http://dbgroup.cs.tsinghua.edu.cn/ligl/crowdalign.pdfMotivation随着语义网络的迅…

TCC分布式实现原理及分布式应用如何保证高可用

一、业务场景介绍 咱们先来看看业务场景&#xff0c;假设你现在有一个电商系统&#xff0c;里面有一个支付订单的场景。 那对一个订单支付之后&#xff0c;我们需要做下面的步骤&#xff1a; 更改订单的状态为“已支付”扣减商品库存给会员增加积分创建销售出库单通知仓库发货…

IJCAI 2018:中科院计算所:增强对话生成一致性的序列到序列模型

IJCAI 2018&#xff1a;中科院计算所&#xff1a;增强对话生成一致性的序列到序列模型文章来源&#xff1a;企鹅号 - 读芯术你和“懂AI”之间&#xff0c;只差了一篇论文号外&#xff01;又一拨顶会论文干货来袭&#xff01;2018年6月9-10日&#xff0c;代表学术界和工业界的顶…

一时学习一时爽,持续学习持续爽

一只小狐狸带你解锁NLP/ML/DL秘籍作者&#xff1a;小鹿鹿鹿 net~net~你围棋下的这么好&#xff0c;斗地主应该也不错吧不敢当不敢当但是人家柯洁才得了欢乐斗地主全国第一呢那让老夫也学习学习吧~巴拉巴拉小魔仙Training。。。net net stop&#xff01;你怎么斗地主还没学会&am…

基于“大中台+小前台”思想的电商系统总体架构设计

一、架构总原则 1. 大中台小前台的架构思路 2. 业务中台采用领域驱动设计&#xff08;DDD&#xff09;&#xff0c;在其上构建业务能力SAAS&#xff0c;持续不断进行迭代演进。 3. 平台化定位&#xff0c;进行了业务隔离设计&#xff0c;方便一套系统支撑不同玩法的业务类型和便…

论文写作葵花宝典

一只小狐狸带你解锁NLP/DL/ML秘籍作者&#xff1a;小鹿鹿鹿论文写作套路老板说&#xff1a;写论文是有套路的老板说&#xff1a;introduction写好了&#xff0c;论文就成功了一半老板说&#xff1a;你的motivation是什么&#xff0c;contribution又是啥&#xff1f;小夕说&…