黑马程序员技术交流社区
标题: 【济南中心】JavaEE就业班同步笔记第一阶段:JavaWeb之HTML与CSS [打印本页]
作者: 小鲁哥哥 时间: 2016-11-7 19:47
标题: 【济南中心】JavaEE就业班同步笔记第一阶段:JavaWeb之HTML与CSS
本帖最后由 小鲁哥哥 于 2020-1-8 22:03 编辑
【济南中心】JavaEE就业班同步笔记第一阶段:
JavaWeb之前端技术--HTML&CSS
1 案例一:使用DIV+CSS方式重新布局网站的首页.
1.1 需求:网站首页的设计:采用DIV+CSS的方式完成.
之前使用的是表格的布局!!!表格的布局有缺陷!!!
1.2 分析:【HTML的块标签】
<div></div> :默认一个div独占一行.
<span></span> :默认在同一行.
【CSS的概述】
* HTML相当于网站的骨架!CSS对骨架进行美化!
任何网站都会使用CSS去美化页面!!!
【CSS的基本语法】
CSS的基本语法通常包含两个部分:一个是选择器,一个声明.
* 选择器{属性:属性值;属性:属性值...}
【CSS的引入的方式】
- 行内样式:直接在HTML的元素上使用style属性设置CSS.
[HTML] 纯文本查看 复制代码
<h1 style="color:red;font-size:200px ;">标题</h1>
- 页面内样式:在HTML的<head>标签中使用<style>标签设置CSS.
[HTML] 纯文本查看 复制代码
<style>
h1{
color:blue;
font-size: 40px;
}
</style>
- 外部样式:单独定一个.css的文件.在HTML中引入该CSS文件.
[HTML] 纯文本查看 复制代码
<link href="../../css/demo1.css" rel="stylesheet" type="text/css" />
【CSS的选择器】
[HTML] 纯文本查看 复制代码
div{
border:1px solid blue;
width:40px;
height:45px;
}
[HTML] 纯文本查看 复制代码
#d1{
border:2px solid red;
}
[HTML] 纯文本查看 复制代码
.divClass{
border:2px solid yellow;
}
【CSS的浮动】
[HTML] 纯文本查看 复制代码
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
.divClass{
border:1px solid blue;
width:200px;
height:220px;
}
#d1{
float:left;
}
#d2{
float:left;
}
#d3{
float:left;
}
.clear{
clear:both;
}
</style>
</head>
<body>
<div id="d1" class="divClass">DIV1</div>
<div id="d2" class="divClass">DIV2</div>
<div id="d3" class="divClass">DIV3</div>
<div class="clear"></div>
<div id="d4" class="divClass">DIV4</div>
</body>
</html>
【步骤一】创建一个首页的HTML文件
【步骤二】创建一个整体的DIV元素.
【步骤三】创建每个部分的DIV元素.
【步骤四】为每个部分填充属于自己的那块内容.
1.3 代码实现:[HTML] 纯文本查看 复制代码
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>首页</title>
<style>
#bodyDiv{
border:1px solid blue;
width:90%;
}
.logoDiv{
border:1px solid blue;
width:33%;
float:left;
height:50px;
}
.clear{
clear:both;
}
#menuDiv{
width:100%;
height:50px;
border:1px solid blue;
background-color: black;
}
#imgDiv{
width:100%;
border:1px solid blue;
}
#menuDiv a{
font-size: 20px;
color: white;
}
.productClass{
width:100%;
border:1px solid blue;
}
.contentClass{
width:100%;
border:1px solid blue;
}
.contentClass font{
font-size: 30px;
color: black;
}
</style>
</head>
<body>
<!-- 整体的DIV -->
<div id="bodyDiv">
<!-- logo的DIV -->
<div>
<div class="logoDiv">
<img src="../img/logo2.png" height="48">
</div>
<div class="logoDiv">
<img src="../img/header.png" height="48">
</div>
<div class="logoDiv">
<a href="">登录</a>
<a href="">注册</a>
<a href="">购物车</a>
</div>
<div class="clear"></div>
</div>
<!-- Menu的DIV -->
<div id="menuDiv">
<a href="">首页</a>
<a href="">电脑办公</a>
<a href="">手机数码</a>
<a href="">烟酒糖茶</a>
</div>
<!-- 图片滚动的DIV -->
<div id="imgDiv">
<img src="../img/1.jpg" width="100%">
</div>
<!-- 热门商品的DIV -->
<div class="productClass">
<!-- 文字部分的DIV -->
<div class="contentClass">
<font>热门商品</font><img src="../img/title2.jpg">
</div>
<!-- 商品部分的DIV -->
<div style="width:100%;border:1px solid blue;">
<div style="width:15%;height: 460px;border:1px solid blue;float:left;">
<img src="../img/big01.jpg" width="100%" height="100%">
</div>
<div style="width:84%;height: 460px;border:1px solid blue;float:left;">
<div>
<div style="border:1px solid blue;width:48%;float:left;height:228px;">
<img src="../img/middle01.jpg" width="100%" height="100%">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
</div>
<div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
</div>
</div>
</div>
</div>
<!-- 广告的DIV -->
<div style="width:100%;border:1px solid blue;">
<img src="../img/ad.jpg" width="100%" height="80">
</div>
<!-- 最新商品的DIV -->
<div class="productClass">
<!-- 文字部分的DIV -->
<div class="contentClass">
<font>最新商品</font><img src="../img/title2.jpg">
</div>
<!-- 商品部分的DIV -->
<div style="width:100%;border:1px solid blue;">
<div style="width:15%;height: 460px;border:1px solid blue;float:left;">
<img src="../img/big01.jpg" width="100%" height="100%">
</div>
<div style="width:84%;height: 460px;border:1px solid blue;float:left;">
<div>
<div style="border:1px solid blue;width:48%;float:left;height:228px;">
<img src="../img/middle01.jpg" width="100%" height="100%">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
</div>
<div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
<div style="border:1px solid blue;width:16%;float:left;height:228px;">
<img src="../img/small03.jpg">
</div>
</div>
</div>
</div>
</div>
<!-- 页脚的DIV -->
<div style="width:100%;border:1px solid blue;">
<img src="../img/footer.jpg" width="100%">
</div>
<!-- 友情链接及版权的DIV -->
<div style="width:100%;border:1px solid blue;">
<center>
关于我们 联系我们 招贤纳士 法律声明 友情链接 支付方式 配送方式 服务声明 广告声明 <br/>
Copyright © 2005-2016 传智商城 版权所有
</center>
</div>
</div>
</body>
</html>
1.4 总结:【CSS的其他选择器】
[HTML] 纯文本查看 复制代码
<style>
input[type="text"]{
background-color: red;
}
</style>
div span 查找的是所有div中的所有的span元素.
[HTML] 纯文本查看 复制代码
h1 strong{
color:red;
}
<h1>
This is <strong>very</strong> <strong>very</strong> important.
</h1>
<h1>This is
<strong>very</strong>
<em>really
<strong>very</strong>
</em>
important.
</h1>
div > span找这个div中的第一层级的span元素.
[HTML] 纯文本查看 复制代码
h1 > strong{
color:red;
}
<h1>
This is <strong>very</strong> <strong>very</strong> important.
</h1>
<h1>This is
<strong>very</strong>
<em>really
<strong>very</strong>
</em>
important.
</h1>
选择器,选择器{
}
【CSS的样式】
2 案例二:使用DIV+CSS布局注册页面:
2.1 需求:使用DIV+CSS的方式完成注册页面的布局:
2.2 分析:【CSS中的盒子模型】
- 内边距:padding.
- 边框:border
- 外边距:margin
【CSS中的定位】
position属性设置定位:
* relative:相对定位
* absolute:绝对定位
使用另外两个属性:left,top
【步骤一】创建一个html页面
【步骤二】创建一个整体的DIV
【步骤三】在整体DIV中创建5个DIV.
【步骤四】为每个DIV添加所属的内容.
[HTML] 纯文本查看 复制代码
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>注册页面</title>
<style>
div{
border:1px solid blue;
}
.bodyDiv{
width:90%;
}
.bodyDiv > div{
width:100%;
}
.logoDiv{
width:33%;
height:50px;
float:left;
}
.clear{
clear:both;
}
ul li{
display:inline;
}
</style>
</head>
<body>
<!--整体DIV-->
<div class="bodyDiv">
<div>
<div class="logoDiv">
<img src="../img/logo2.png" height="50"/>
</div>
<div class="logoDiv">
<img src="../img/header.png" height="50"/>
</div>
<div class="logoDiv" style="margin-top:0px;padding-top:10px;height:40px;">
<a href="">登录</a>
<a href="">注册</a>
<a href="">购物车</a>
</div>
<div class="clear"></div>
</div>
<div style="height:50px;background-color: black;color:white;font-size: 20px;">
<ul >
<li>首页</li>
<li>首页</li>
<li>首页</li>
<li>首页</li>
</ul>
</div>
<div style="height:500px;background-image: url(../img/regist_bg.jpg);">
<div style="border:5px solid gray;background-color:white;position:absolute;left:350px;top:160px;width:600px;">
<form>
<table border="0" width="100%" cellspacing="15">
<tr>
<td>用户名</td>
<td><input type="text" name="username"></td>
</tr>
<tr>
<td>密码</td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td>确认密码</td>
<td><input type="password" name="repassword"></td>
</tr>
<tr>
<td>性别</td>
<td><input type="radio" name="sex" value="男">男<input type="radio" name="sex" value="女">女</td>
</tr>
<tr>
<td>籍贯</td>
<td>
<select name="province">
<option>-请选择-</option>
</select>
<select name="city">
<option>-请选择-</option>
</select>
</td>
</tr>
<tr>
<td>爱好</td>
<td>
<input type="checkbox" name="hobby" value="篮球" />篮球
<input type="checkbox" name="hobby" value="足球" />足球
<input type="checkbox" name="hobby" value="排球" />排球
<input type="checkbox" name="hobby" value="羽毛球" />羽毛球
</td>
</tr>
<tr>
<td>邮箱</td>
<td><input type="text" name="email"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="注册"></td>
</tr>
</table>
</form>
</div>
</div>
<div>
<img src="../img/footer.jpg" width="100%"/>
</div>
<div>
<center>
关于我们 联系我们 招贤纳士 法律声明 友情链接 支付方式 配送方式 服务声明 广告声明 <br/>
Copyright © 2005-2016 传智商城 版权所有
</center>
</div>
</div>
</body>
</html>
2.4 总结:
3 案例三:完成对注册页面的数据的简单校验.
3.1 需求:
对注册页面的数据进行非空的简单校验!!!如果有某个值没有输入,点击提交,弹出一个对话框进行提示!!
3.2 分析:【JS的概述】
运行在浏览器端的脚本语言!
js是一种轻量级的编程语言
js是可插入html页面的编程代码
js插入html页面后,可由所有现代浏览器解析
JavaScript的组成:
ECMAScript:JavaScript的基本的语法
BOM:BrowserObject Model :
DOM:DocumentObject Model :
JavaScript,ActionScript,Flex
使页面更加丰富,使页面动起来!!!
【JS的基本语法】
* Java
* int i =3;
* String s= “abc”;
* JavaScript:
* var i =3;
* var s = “abc”;
【JS的数据类型】
JS将数据类型分成两类:
* 原始类型:
*undefined:未定义类型
*boolean:布尔类型
* number:数字类型
* string:字符或字符串.
* null:空
* 引用类型:
* 对象类型.对象类型默认值是null.
【JS的运算符】
JS中的运算符与Java中基本一致!
JS中有一个=== 全等于.全等于是类型和值都一致的情况下才为true.
【JS的语句】
JS中的语句与Java的语句一致!
【JS的通常开发的步骤】
JS通常都由一个事件触发.
触发一个函数,定义一个函数.
获得操作对象的控制权.
修改要操作的对象的属性或值.
定义函数:
* function 函数名称(){
// 函数体
}
* window.onload = function(){
}
常用事件:onclick,ondblclick,onmouseover,onmouseout,onload...
【JS的引入方式】
通常两种方式:
一种:页面内直接编写JS代码,JS代码需要使用<script></script>.
二种:将JS的代码编写到一个.js的文件中,在HTML中引入该JS代码即可.
3.3 代码实现: [HTML] 纯文本查看 复制代码
<script>
// alert("Hello!");
function checkForm(){
// 获得文本框的值:
var username = document.getElementById("username").value;
// var val = username.value;
// alert(username);
if(username == ""){
alert("用户名不能为空!");
return false;
}
// 校验密码:
var password = document.getElementById("password").value;
if(password == ""){
alert("密码不能为空");
return false;
}
// 校验确认密码:
var repassword = document.getElementById("repassword").value;
if(repassword != password){
alert("两次密码输入不一致!");
return false;
}
// 校验邮箱:
var email = document.getElementById("email").value;
// JS校验正则表达式就有两个方法:String对象中的match方法,一个是正则对象中的test方法.
// str.match("正则表达式"); 正则.test("字符串");
if(!/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/.test(email)){
alert("邮箱格式不正确!");
return false;
}
}
</script>
3.4 总结:将JS的代码定义成一个文件引入:
[HTML] 纯文本查看 复制代码
<script src="../js/check.js"></script>
获得页面中的元素:
* document.getElementById(“”);
正则的匹配:
JS中有两种匹配正则的方式:
* 使用String对象中的match方法.
* 使用正则对象中的test方法.
4 案例四:使用JS完成图片滚动的效果
4.1 需求:
使用JS完成该效果:
4.2 分析:【HTML的window对象】
* setInterval(); :每隔多少毫秒执行某个表达式.
* setInterval(“change()”,5000);
* setTimeout(); :隔多少毫秒执行一个该表达式.
* setTimeout(“change()”,5000);
作者: 乌托邦619 时间: 2016-11-7 19:59
前段内容 了解
作者: 水中鸟 时间: 2016-11-7 22:43
顶一下~~呵呵,学习学习,瞻仰高手风采~~我轻轻飘过~~
作者: 橘子哥 时间: 2016-11-8 10:17
感谢老师精心整理的宝贵教程!
作者: 小鲁哥哥 时间: 2016-11-9 14:20
作者: 小鲁哥哥 时间: 2016-11-9 14:21
作者: jkdong 时间: 2016-11-9 14:22
老师写的不错,学习了,谢谢。
作者: 小鲁哥哥 时间: 2016-11-9 14:25
这是我们应该的
作者: 倾心莫若初见 时间: 2016-11-15 16:34
加QQ3487425496 即可获取 2016年所有最新C/C++资源 (教学视频+大牛笔记+配套源码+破解版工具+名企面试题)
加QQ3487425496 即可获取 2016年所有最新C/C++资源 (教学视频+大牛笔记+配套源码+破解版工具+名企面试题)
作者: 小染-柒柒 时间: 2016-11-15 16:45
带着程序员蜀黍学设计咯~~抓紧时间添加QQ3550563587获取UI设计最新免费随班视频资源哦~
作者: xyy222 时间: 2016-11-16 13:14
看看。。。
作者: aA772807986 时间: 2016-11-16 20:26
学习到了,谢谢!
作者: 麻瓜男生酱紫 时间: 2016-11-17 18:23
生活是不平等的,我们要活得精彩就要打破这种不平等,打破这种不平等的因素就是扎实的功底和对机遇的掌控,机遇不是别人给的,而是自己创造的,告别连自己都讨厌的过去,创造自己梦想中的未来
作者: hgd5201314 时间: 2016-11-18 15:08
支持一个
作者: double[K] 时间: 2016-11-18 23:05
很快就能学到高新技术
作者: 麻瓜男生酱紫 时间: 2016-11-21 23:35
生活是不平等的,我们要活得精彩就要打破这种不平等,打破这种不平等的因素就是扎实的功底和对机遇的掌控,机遇不是别人给的,而是自己创造的,告别连自己都讨厌的过去,创造自己梦想中的未来
作者: 小染-柒柒 时间: 2016-11-22 14:50
黑马程序员走心出品UI设计学习路线图,海量学习资源等你来拿。 http://www.itheima.com/uimap。视频链接出现问题请加QQ3550563587
作者: 369 时间: 2016-11-27 12:11
就业班的知识吗?
作者: win-bao 时间: 2016-11-28 14:11
可以的 不错的
作者: javantiger93000 时间: 2016-11-29 12:19
赞一个,,,,
作者: newu 时间: 2016-11-29 17:12
老师写的不错,学习了,谢谢
作者: 来到精彩世界 时间: 2016-11-29 23:53
老师写的不错,学习了,谢谢。
作者: 你好,师姐 时间: 2016-11-30 01:01
挺好的,很不错
作者: 你好,师姐 时间: 2016-11-30 01:04
大神年年有,今年特别多.
作者: 你好,师姐 时间: 2016-11-30 01:09
好好学习,天天向上. 希望自己可以实现自己的目标,
作者: 决心是种子 时间: 2016-11-30 23:05
很不错啊
作者: 小峰先生 时间: 2016-12-2 23:41
就写五个字啊,
作者: 黑马嗨嗨嗨 时间: 2016-12-4 20:13
收藏收藏收藏!!!
作者: xike1024 时间: 2016-12-8 13:15
虽然现在还不懂,先收藏
作者: 孤独于我 时间: 2016-12-22 21:24
不错,挺好的
作者: 小陵不懂 时间: 2016-12-26 09:37
css好像有些难,以后看
作者: @211 时间: 2017-1-1 16:32
不错的呀,很好的学习!
作者: 事难懂 时间: 2017-1-3 13:22
好东西,收藏了
作者: hittor 时间: 2017-1-3 19:18
感谢分享!
作者: Yin灬Yan 时间: 2017-1-10 00:10
好帖子 收藏下
作者: zmanx 时间: 2017-2-12 22:10
我很好奇你怎么会有这么多的黑马币呢,是不是一个已经毕业了的啊
作者: 爱吃橘子的小泽 时间: 2017-2-12 22:11
顶一下,祝黑马越办越好
作者: a690223483 时间: 2017-2-22 21:13
真的很棒 不多说了
作者: zhangkaitong 时间: 2017-2-24 13:23
谢谢分享 赞赞赞!!!!!
作者: a690223483 时间: 2017-2-26 11:32
谢谢分享
作者: zhangkaitong 时间: 2017-2-27 13:45
谢谢分享!赞赞赞!!!1
作者: xulinml 时间: 2017-2-28 08:59
谢谢老师~!~感谢感谢
作者: 为过去的我买单 时间: 2017-3-2 10:04
谢谢分享!
作者: zhouxiaoyang 时间: 2017-3-26 23:27
作者: ys5214 时间: 2017-3-30 13:15
咋没有视频-。-
作者: d623234436 时间: 2017-4-6 13:04
66666666666666666
作者: 空空789456 时间: 2017-4-14 08:58
谢谢楼主分享
作者: hrywxn 时间: 2017-5-22 22:18
谢谢分享
作者: dhj 时间: 2017-6-11 16:49
感谢分享~~~~
作者: a851699 时间: 2017-6-16 22:24
可以,很强势
作者: str.arr 时间: 2017-7-9 09:37
楼主真的是学得不错
作者: 梁修成 时间: 2017-7-10 22:34
这样的笔记真不错哦122
作者: cheat 时间: 2017-7-10 22:34
谢谢,好多好资源啊。已收藏
作者: 古尔丹 时间: 2017-7-25 10:55
太棒了!!!!!!!!!!!!!!!!!!!!!
作者: rimfwfn 时间: 2017-8-1 20:46
看着还不错的样子,谢谢
作者: k1453711238 时间: 2017-8-2 22:29
多谢大哥分享啊,希望持续更新啊
作者: iMoney 时间: 2017-10-12 17:58
这个看上去好学
作者: 黑马17 时间: 2017-10-13 17:24
挺好的!!!
作者: zues911 时间: 2017-10-25 13:33
顶一个
作者: sunshine123 时间: 2017-10-25 14:40
6666666666666666
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |