JavaWeb学习总结:HTML和CSS

HTML

  • 1,概念:Hyper Text Markup Language 超文本标记语言

  • 2,快速入门

    • 语法:
      • 1,html文档后缀名 .html 或者 .htm
      • 2,标签分为
        • 1,围堵标签:有开始标签和结束标签。如
        • 2,自闭合标签:开始标签和结束标签在一起。如
      • 3,标签可以嵌套:
        • 需要正确嵌套,不能你中有我,我中有你
      • 4,在开始标签中可以定义属性。属性是由键值对构成,值需要用引号(单双都可以)引起来
      • 5,html标签不区分大小写,建议用小写。
  • 3,标签学习:

    • 1,文件标签:构成html最基本的标签
      • html:html文档的根标签
      • head:头标签。用于指定html文档的一些属性。引入外部资源
      • title:标题标签
      • body:体标签
      • :html5中定义该文档是html文档
    • 2,文本标签:和文本有关的标签
      • 注释:
      • h1~h6:标题标签
      • p:段落标签
      • br:换行标签
      • hr:展示一条水平线
        • 属性:
          • color:颜色
          • width:宽度
          • size:高度
          • align:对其方式(center:居中,left:左对齐,right:右对齐)
      • b:字体加粗
      • i:字体斜体
      • font:字体标签
      • center:文本居中
        • 属性:
          • color:颜色
          • size:大小
          • face:字体
      • 属性:
        • color:
          • 1,red,green,blue
          • 2,rgb(值1,值2,值3):值的范围:0~255 如:rgb(0,0,255)
          • 3,#值1值2值3:值的范围:00~FF之间。如:#FF00FF
        • width:
          • 1,数值:width=‘20’,数值的单位,默认是px(像素)
          • 2,数值%:占比相对于父元素的比例
    • 3,图片标签:
      • img:展示标签
    • 4,列表标签:
      • 有序列表
        • ol
        • li
      • 无序列表
        • ul
        • li
    • 5,链接标签:
      • src
    • 6,div和span:
      • div:每一个div占满一整行
      • span:文本信息在一行展示,行内标签,内联标签
    • 7,语义化标签:html5中为了提高程序的可读性,提供了一些标签
      • header:页眉
      • footer:页脚
    • 8,表格标签:
      • table:定义表格
        • width:宽度
        • border:边框
        • cellpadding:定义内容和单元格的距离
        • cellspacing:定义单元格之间的距离,如果指定为0,则单元格的线会合为一条
        • bgcolor:背景颜色
        • align:对齐方式
      • tr:定义行
        • bgcolor:背景色
        • align:对齐方式
      • td:定义单元格
        • colspan:合并列
        • rowspan:合并行
      • th:定义表头单元格
      • caption:表格标题
      • thead:表示表格的头部分
      • tbody:表示表格的体部分
      • tfoot:表示表格的脚部分

表单标签

  • 表单:

    • 概念:用于采集用户输入的数据的。用于和服务器进行交互。
    • form:用于定义表单的,可以定义一个范围,范围代表采集用户数据的范围
      • action:指定提交数据的url
      • method:指定提交方式
        • 分类:一共7种,2种比较常用
          • get:
            • 1,请求参数会在地址栏中显示。会封装到请求行中
            • 2,请求参数大小是有限制的
            • 3,不太安全
          • post:
            • 1,请求参数不会再地址栏中显示。会封装在请求体中
            • 2,请求参数的大小没有限制
            • 3,较为安全
        • 表单项中的数据要想被提交:必须指定其name属性
  • 表单项标签

    • input:可以通过type属性值,改变元素展示的样式
      • type属性:
        • text:文本输入框,默认值
          • placeholder:指定输入框的提示信息,当输入框输入内容,会自动清除提示信息
        • password:密码输入框
        • radio:单选框
          • 注意:
            • 要想让多个单选框实现单选的效果,则多个单选框的name属性值必须一样
            • 一般会给每一个单选框提供value值,指定其被选中后提交的值
            • checked:可以指定默认值
        • checkbox:复选框
          • 一般会给每一个单选框提供value值,指定其被选中后提交的值
          • checked:可以指定默认值
        • file:文件选择框
        • hidden:隐藏域,用于提交一些信息
        • 按钮:
          • submit:提交按钮。可以提交表单
          • button:普通按钮
          • image:图片提交按钮
            • src属性指定图片的路径
      • label:指定输入项的文字描述信息
        • 注意:
          • label的for属性一般会和input的id属性值对应。如果对应了,则点击label区域,会让input输入框获取焦点
    • select:下拉列表
      • 子元素:option,指定列表项
    • textarea:文本域
      • cols:指定列数,每一行有多少个字符
      • rows:默认多少行
<!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">Email</label></td>
                <td><input type="email" name="email" id="email"></td>
            </tr>
            <tr>
                <td><label for="name">姓名</label></td>
                <td><input type="text" name="name" id="name"></td>
            </tr>

            <tr>
                <td><label for="tel">手机号</label></td>
                <td><input type="text" name="tel" id="tel"></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="checkcode" id="checkcode">
                    <img src="image/verify_code.jpg">
                </td>
            </tr>

            <tr>
                <td colspan="2" align="center"><input type="submit" value="注册"></td>
            </tr>
        </table>
    </form>


</body>
</html>

CSS

页面美化和布局控制

一,概念:Cascading Style Sheets 层叠样式表

  • 层叠:多个样式可以作用在同一个html的元素上,同时生效

二,好处:

  • 1,功能强大

  • 2,将内容展示和样式控制分离

    • 降低耦合度。解耦
    • 让分工协作更容易
    • 提高开发效率
  • 3,CSS的使用:CSS与html结合方式

    • 1,内联样式
      • 在标签内使用style属性指定css代码
      • <div style="color:red;">hello jsp</div>
    • 2,内部样式
      • 在head标签内,定义style标签,style标签的标签体内容就是css代码
    • 3,外部样式
      • 定义css资源文件
      • 在head标签内,定义link标签,引入外部的资源文件
		<!DOCTYPE html>
		<html lang="en">
		<head>
		    <meta charset="UTF-8">
		    <title>Title</title>
		    <style>
		        div{
		            color:green;
		        }
		    </style>
		</head>
		<body>
		<!--
		    内部样式
		    * 在head标签内,定义style标签,style标签的标签体内容就是css代码
		-->
		<div>hello Jsp</div>
		</body>
		</html>
  • 4,css语法
    • 格式:
选择器{
	属性名1:属性值;
	属性名2:属性值;
	....
}
  • 5,选择器:筛选具有相似特征的元素
    • 基础选择器
      • 1,id选择器:选择器具体的id属性值的元素,id值建议唯一
        • 语法:#id属性值{}
      • 2,元素选择器:选择具有相同标签名称的元素
        • 语法:标签名称{}
        • 注意:id选择器的优先级要高于元素选择器
      • 3,类选择器:选择具有相同的class属性值的元素
        • 语法:.class属性值{}
        • 注意:类选择器优先级高于元素选择器
    • 扩展选择器
      • 1,选择所有元素
        • *选择器: {}
      • 2,并集选择器:
        • 选择器1,选择器2{}
      • 3,子选择器:筛选选择器1元素下的选择器2元素
        • 语法:选择器1 选择器2{}
      • 4,父选择器:筛选选择器2的父元素选择器1
        • 语法:选择器1>选择器2{}
      • 5,属性选择器:选择元素名称,属性名=属性值的元素
        • 语法:元素名称[属性名=“属性值”]{}
      • 6,伪类选择器:选择一些元素具有的状态
        • 语法:元素:状态{}
        • 如:a标签
          • 状态:
          • link:初始化的状态
          • visited:被访问过的状态
          • active:正在访问的状态
          • hover:鼠标悬浮
    • 6,属性
      • 1,字体、文本
        • font-size:字体大小
        • color:文本颜色
        • text-align:对齐方式
        • line-height:行高
      • 2,背景
        • background:
      • 3,边框
        • border:
      • 4,尺寸
        • width:宽度
        • height:高度
      • 5,盒子模型:控制布局
        • margin:外边距
        • padding:内边距
          • 默认情况下内边距会影响整个盒子的大小
          • 解决:box-sizing:border-box; 设置盒子的属性,让width和height就是最终盒子的大小。
        • float:浮动
          • left
          • right
案例
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>注册页面</title>
    <style>
    *{
        margin: 0px;
        padding: 0px;
        box-sizing: border-box;
    }
    body{
        background: url("image/register_bg.png") no-repeat center;
        padding-top: 25px;
    }

    .rg_layout{
        width: 900px;
        height: 500px;
        border: 8px solid #EEEEEE;
        background-color: white;
        /*让div水平居中*/
        margin: auto;
    }

    .rg_left{
        /*border: 1px solid red;*/
        float: left;
        margin: 15px;
    }
    .rg_left > p:first-child{
        color:#FFD026;
        font-size: 20px;
    }

    .rg_left > p:last-child{
        color:#A6A6A6;
        font-size: 20px;

    }


    .rg_center{
        float: left;
       /* border: 1px solid red;*/

    }

    .rg_right{
        /*border: 1px solid red;*/
        float: right;
        margin: 15px;
    }

    .rg_right > p:first-child{
        font-size: 15px;

    }
    .rg_right p a {
        color:pink;
    }

    .td_left{
        width: 100px;
        text-align: right;
        height: 45px;
    }
    .td_right{
        padding-left: 50px ;
    }

    #username,#password,#email,#name,#tel,#birthday,#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;
    }

    #btn_sub{
        width: 150px;
        height: 40px;
        background-color: #FFD026;
        border: 1px solid #FFD026 ;
    }
</style>
</head>
<body>
<div class="rg_layout">
    <div class="rg_left">
        <p>新用户注册</p>
        <p>USER REGISTER</p>
    </div>
    <div class="rg_center">
        <div class="rg_form">
            <!--定义表单 form-->
            <form action="#" method="post">
                <table>
                    <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">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="text" name="name" id="name" placeholder="请输入姓名"></td>
                    </tr>
                    <tr>
                        <td class="td_left"><label for="tel">手机号</label></td>
                        <td class="td_right"><input type="text" name="tel" id="tel" 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" placeholder="请输入出生日期"></td>
                    </tr>
                    <tr>
                        <td class="td_left"><label for="checkcode" >验证码</label></td>
                        <td class="td_right"><input type="text" name="checkcode" id="checkcode" placeholder="请输入验证码">
                            <img id="img_check" src="image/verify_code.jpg">
                        </td>
                    </tr>
                    <tr>
                        <td colspan="2" align="center"><input type="submit" id="btn_sub" value="注册"></td>
                    </tr>
                </table>
            </form>
        </div>
    </div>
    <div class="rg_right">
        <p>已有账号?<a href="#">立即登录</a></p>
    </div>
</div>
</body>
</html>

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值